Bài tập chương Làm lại số phức với phương thức thiết lập cho phép quan điểm số thực số phức đặc biệt (phần ảo 0) Đònh nghóa phép toán +, -, *, /, ==, !=, ! số phức Đònh nghóa phép toán > để xuất nhập liệu vào số phức Làm lại phân số với phương thức thiết lập cho phép sử dụng số nguyên phân số đặc biệt (mẫu số 1) Đònh nghóa phép toán +, -, *, /, ==, !=, ! phân số Đònh nghóa phép toán > để xuất nhập liệu vào phân số Đònh nghóa lớp CtimeSpan biểu diễn khái niệm khoảng thời gian, hàm thành phần phép toán cần thiết Đònh nghóa lớp CTime biểu diễn khái niệm thời điểm có thành phần phút giây Đònh nghóa phép toán +, (cộng, trừ thêm số nguyên giây), - (phép trừ hai CTime để CTimSpan), ++, (thêm bớt giây) Phép toán để xuất, nhập liệu loại CTime Áp dụng lớp CTime để tạo đồng hồ in góc bên phải hình Đònh nghóa lớp CDate biểu diễn khái niệm ngày, tháng, năm với phép toán +, - (cộng, trừ thêm số ngày), ++, -(thêm bớt ngày), - (khoảng cách hai CDate tính ngày) Phép toán để xuất, nhập liệu loại CDate Áp dụng lớp CDate để giải toán tính lãi xuất gởi ngân hàng Hãy đònh nghóa lớp CString biểu diễn khái niệm chuỗi ký tự với phương thức thiết lập, huỷ bỏ, hàm thành phần phép toán cần thiết (+, gán, so sánh hai chuỗi) Đònh nghóa lớp biểu diễn khái niệm đa thức có bậc với hàm thành phần phép toán cần thiết Đònh nghóa lớp CVector biểu diễn khái niệm vector không gian có số chiều với hàm thành phần phép toán cần thiết Đònh nghóa lớp CMatrix biểu diễn khái niệm ma trận có kích thước với hàm thành phần phép toán cần thiết Viết hàm tính tích ma trận vector Tích hai ma trận Thiết lập lớp UInt2 biểu diễn khái niệm số nguyên không dấu có kích thước từ máy (2*sizeof(unsigned) bytes liệu) Thiết lập lớp UInt4 biểu diễn khái niệm số nguyên không dấu có kích thước từ máy (4*sizeof(unsigned) bytes liệu) 10.Thiết lập lớp UIntN biểu diễn khái niệm số nguyên không dấu có kích thước N từ máy (N*sizeof(unsigned) bytes liệu) Trong giá trò N cho phép người sử dụng qui đònh bắt đầu thực chương trình 11.Để biểu diễn khái niệm tập hợp ký tự (gồm 256 ký tự), ta dùng 32 bytes (32 bytes = 256 bits) liệu, ký tự x (ví dụ 'A') thuộc tập hợp bit tương ứng với mã ascii x (ví dụ 'A' bit thứ 65) bật lên Hãy đònh nghóa lớp CharSet biểu diễn khái niệm tập hợp với hàm thành phần phép toán cần thiết 12.Hãy đònh nghóa lớp INTEGER hoạt động để INTEGER giống hệt 'int' ngôn ngữ C/C++ 13.Hãy đònh nghóa lớp MYINT có hoạt động kiểu liệu 'int' phép cộng hai MYINT hoạt động phép trừ hai int ngược lại 14.Hãy đònh nghóa lớp INTBIT số nguyên có phép cộng hoạt động sau: // INTBIT i = 0; i = i + + + 9; // có nghóa bật bit thứ 3, thứ thứ i lên (ie i = 0x114) (Bit qui ước bit 1, bit cuối đánh dấu bit 16 int có 16 bit) 15.Đònh nghóa lớp CExpr để biểu diễn biểu thức toán học dạng trung tố với phép toán thông dụng +, -, *, / cho phép có dấu ngoặc Phần giao diện sau: class CExpr { char *expr; public: CExpr(); CExpr(char *s); ~CExpr(); double eval(); // }; main() { CExpr("2 + * - (3 + (7 + 2) * 3) / 2"); cout