Đề bài : ThucHanh07_Struct_DanhSachLienKet.pdf
Định nghĩa kiểu cấu trúc struct thoigian (ThoiGian) để biểu diễn thời gian dưới dạng giờ:phút:giây
( 0 <= giờ <= 23; 0 <= phút <= 59; 0 <= giây <= 59 )
Viết các hàm sau đây :
a. Đọc 1 biến ThoiGian từ bàn phím :
void docThoiGian (ThoiGian&) ;
b. In 1 biến ThoiGian ra màn hình :
void inThoiGian (const ThoiGian&) ;
c. Quy chuẩn thời gian : ví dụ 25h đưa về 1:00:00 ; -1:30:00 đưa về 23:30:00 ; -1:-30:00 đưa về 22:30:00
void quyChuanThoiGian (ThoiGian&) ;
d. Cộng 2 biến ThoiGian :
const ThoiGian congThoiGian (ThoiGian&, ThoiGian&) ;
e. Trừ 2 biến ThoiGian :
const ThoiGian truThoiGian (ThoiGian&, ThoiGian&) ;
f. So sánh 2 biến ThoiGian :
bool soSanhThoiGianLonHon (ThoiGian&, ThoiGian&) ;
bool soSanhThoiGianNhoHon (ThoiGian&, ThoiGian&) ;
bool soSanhThoiGianBang (ThoiGian&, ThoiGian&) ;
bool soSanhThoiGianKhac (ThoiGian&, ThoiGian&) ;
_______________________________________________________________________
Code : http://pastebin.com/U9yJwWyL hoặc thuchanh7-bai1.cpp
_______________________________________________________________________
#include <iostream>
using namespace std;
typedef struct thoigian
{
int gio;
int phut;
int giay;
}ThoiGian;
void quyChuanThoiGian(ThoiGian&);
void nhapThoiGian(ThoiGian& tg)
{
cout << "Nhap thoi gian: ";
cin >> tg.gio >> tg.phut >> tg.giay ;
quyChuanThoiGian(tg);
}
void inThoiGian(ThoiGian& tg)
{
quyChuanThoiGian(tg);
cout << tg.gio << ":" << tg.phut << ":" << tg.giay << endl;
}
void quyChuanThoiGian(ThoiGian& tg)
{
int tong;
tong = tg.gio * 3600 + tg.phut*60 + tg.giay;
if (tong<0) tong = 86400 + tong;
else
{
if ( tong > 86400 )
{
tong -= 86400;
}
}
tg.gio = tong/3600; tong -= tg.gio*3600;
tg.phut = tong/60; tong -= tg.phut*60;
tg.giay = tong;
}
ThoiGian congThoiGian(ThoiGian tg1, ThoiGian tg2)
{
ThoiGian tgtong;
tgtong.gio = tg1.gio + tg2.gio;
tgtong.phut = tg1.phut + tg2.phut;
tgtong.giay = tg1.giay + tg2.giay;
quyChuanThoiGian(tgtong);
return tgtong;
}
ThoiGian truThoiGian(ThoiGian tg1, ThoiGian tg2)
{
ThoiGian tghieu;
tghieu.gio = tg1.gio - tg2.gio;
tghieu.phut = tg1.phut - tg2.phut;
tghieu.giay = tg1.giay - tg2.giay;
quyChuanThoiGian(tghieu);
return tghieu;
}
int main ()
{
ThoiGian tg1, tg2, cong, hieu;
nhapThoiGian(tg1);
inThoiGian(tg1);
nhapThoiGian(tg2);
inThoiGian(tg2);
cong = congThoiGian(tg1,tg2);
cout << "Tong thoi gian : ";
inThoiGian(cong);
hieu = truThoiGian(tg1,tg2);
cout << "Hieu thoi gian : " ;
inThoiGian(hieu);
system("pause");
return 0;
}