Xây dựng một lớp Complex mô tả các đối tượng số phức, lớp gồm các thành phần: - Các thuộc tính a, b là các số thực mô tả phần thực và phần ảo của số phức.. Xây dựng một lớp Complex mô tả
Trang 1đề cương ôn tập môn lập trình hướng đối tượng với c++
Phần 1: đối tượng và lớp
Câu 1.1:
a Xây dựng một lớp Complex mô tả các đối tượng số phức, lớp gồm các thành phần:
- Các thuộc tính a, b là các số thực mô tả phần thực và phần ảo của số phức
- Hàm thiết lập
- Hàm nhập số phức
- Hàm in số phức dạng a+ib
- Khai báo toán tử + để tính tổng 2 số phức là hàm bạn của lớp số phức
- Khai báo toán tử - để tính hiệu 2 số phức là hàm bạn của lớp số phức
b Định nghĩa toán tử + và toán tử
-c Viết chương trình nhập dữ liệu vào từ bàn phím để tạo hai đối tượng số phức x, y Tính và in ra màn hình tổng, hiệu 2 số phức đó
Câu 1.2:
a Xây dựng một lớp Complex mô tả các đối tượng số phức, lớp gồm các thành phần:
- Các thuộc tính a, b là các số thực mô tả phần thực và phần ảo của số phức
- Hàm thiết lập
- Hàm nhập số phức
- Hàm in số phức dạng a+ib
- Toán tử = để gán 2 số phức
- Toán tử + để cộng 2 số phức
b Viết chương trình nhập một mảng n số phức, tính và in ra màn hình tổng các số phức đã nhập
Câu 1.3:
a Tạo lớp Matrix để mô tả các đối tượng ma trận, lớp gồm các thành phần:
- Số hàng, số cột: n, m
- Một con trỏ **v trỏ đến các phần tử dữ liệu
- Hàm thiết lập
- Hàm thiết lập sao chép
- Hàm huỷ bỏ
- Hàm nhập các phần tử của ma trận
- Hàm hiển thị các phần tử dữ liệu của ma trận
- Hàm kiểm tra hai ma trận có cùng số hàng, số cột hay không
- Khai báo toán tử + là hàm bạn của lớp Matrix, dùng để cộng hai ma trận, kết quả trả về là một
ma trận
b Định nghĩa toán tử +
c Viết chương trình nhập vào hai ma trận Tính và in ra màn hình tổng hai ma trận nếu 2 ma trận cùng
số hàng, số cột Ngược lại, thông báo ra màn hình 2 ma trận không cùng cấp
Câu 1.4:
a Tạo lớp Vector để mô tả các đối tượng vector, lớp gồm các thành phần:
- Số phần tử: n
Trang 2- Một con trỏ *v trỏ đến các phần tử dữ liệu.
- Hàm thiết lập một tham số dùng để cấp phát bộ nhớ cho các phần tử dữ liệu
- Hàm thiết lập sao chép
- Hàm huỷ bỏ
- Hàm nhập các phần tử của vector
- Hàm hiển thị các phần tử dữ liệu của vector
- Toán tử = để gán một vector cho một vector
- Khai báo toán tử + để cộng hai vector là hàm bạn của lớp Vector, kết quả trả về một vector
b Định nghĩa toán tử +
c Viết chương trình nhập vào hai vector a, b In ra màn hình vector a, vector b và vector a+b
Câu 1.5:
a Xây dựng 1 lớp PS mô tả các đối tượng phân số, lớp gồm các thành phần:
- Các thuộc tính mô tả tử số và mẫu số của phân số
- Hàm thiết lập
- Hàm nhập phân số
- Hàm in phân số dạng tử số/mẫu số
- Hàm rút gọn phân số
- Toán tử + dùng để tính tổng 2 phân số, kết quả trả về một phân số tối giản
b Viết chương trình nhập một mảng n đối tượng phân số, tính và in ra màn hình tổng của mảng đã nhập
Câu 1.6:
a Xây dựng 1 lớp PS mô tả các đối tượng phân số, lớp gồm các thành phần:
- Các thuộc tính mô tả tử số và mẫu số của phân số
- Hàm thiết lập
- Hàm nhập phân số
- Hàm in phân số dạng tử số/mẫu số
- Toán tử > để so sánh 2 đối tượng phân số
b Viết chương trình nhập một mảng n phân số, sắp xếp mảng phân số tăng dần và in ra màn hình mảng
đã sắp
Câu 1.7:
a Xây dựng 1 lớp PS mô tả các đối tượng phân số, lớp gồm các thành phần:
- Các thuộc tính mô tả tử số và mẫu số của phân số
- Hàm thiết lập
- Hàm nhập phân số
- Hàm in phân số dạng tử số/mẫu số
- Khai báo toán tử >= là hàm bạn của lớp phân số dùng để so sánh 2 phân số
b Định nghĩa toán tử >=
c Viết chương trình nhập dữ liệu vào từ bàn phím để tạo một mảng 5 phân số Tìm và in ra màn hình phân số lớn nhất, phân số bé nhất
Câu 1.8:
a Tạo lớp Vector để mô tả các đối tượng vector, lớp gồm các thành phần:
Trang 3- Số phần tử: n
- Một con trỏ *v trỏ đến các phần tử dữ liệu
- Hàm thiết lập
- Hàm thiết lập sao chép
- Hàm huỷ bỏ
- Hàm nhập các phần tử của vector
- Hàm hiển thị các phần tử dữ liệu của vector
- Toán tử = để gán một vector cho một vector
- Khai báo toán tử * là hàm bạn của lớp Vector, dùng để nhân một số thực k với 1 vector, kết quả trả về là một vector
b Định nghĩa toán tử *
c Viết chương trình nhập vào một số thực k và một vector a In ra màn hình các phần tử dữ liệu của vector a và vector k*a
Câu 1.9:
a.Xây dựng 1 lớp MyDate mô tả thông tin ngày, tháng, năm Lớp gồm các thành phần:
- Các thuộc tính mô tả ngày, tháng, năm
- Hàm thiết lập
- Hàm nhập ngày, tháng, năm
- Hàm hiển thị thông tin về ngày, tháng, năm theo dạng: ngày-tháng-năm
- Toán tử > so sánh 2 đối tượng Mydate
b Viết chương trình tạo một mảng n đối tượng kiểu MyDate, hiển thị các đối tượng đã nhập, sắp xếp các đối tượng tăng dần và in ra các đối tượng đã sắp
Câu 1.10:
a Tạo lớp Vector để mô tả các đối tượng vector, lớp gồm các thành phần:
- Số phần tử: n
- Một con trỏ *v trỏ đến các phần tử dữ liệu
- Hàm thiết lập một tham số dùng để khởi tạo n và cấp phát bộ nhớ cho các phần tử dữ liệu
- Hàm thiết lập sao chép
- Hàm huỷ bỏ
- Hàm nhập các phần tử của vector
- Hàm hiển thị các phần tử dữ liệu của vector
- Toán tử = để gán một vector cho một vector
- Viết hàm kiểm tra để kiểm tra xem hai vector có cùng số phần tử hay không?
- Khai báo toán tử + là hàm bạn của lớp Vector, dùng để cộng hai vector cùng số phần tử, kết quả trả về là một vector
b Định nghĩa toán tử +
c Viết chương trình nhập vào hai vector a và b Dùng hàm kiểm tra để kiểm tra xem hai vector a, b có cùng số phần tử hay không, nếu đúng thì tính tổng hai vector và hiển thị vector tổng, nếu không thì có thông báo ra màn hình hai vector a, b không cộng được với nhau
Câu 1.11:
Một quyển danh bạ điện thoại của một cơ quan chứa các thông tin về họ tên, địa chỉ, số điện thoại của các cán bộ
Trang 4a Xây dựng 1 lớp Person, lớp gồm các thành phần sau:
- Thuộc tính: Name, Address, Phone để mô tả các thông tin trong danh bạ
- Hàm thiết lập với 3 tham số
- Hàm huỷ bỏ
- Hàm lấy Name
- Hàm lấy Address
- Hàm lấy Phone
b Xây dựng một lớp List để chứa danh sách cán bộ, lớp gồm có các thành phần sau:
- Thuộc tính maxSize mô tả số cán bộ tối đa
- Thuộc tính People là một con trỏ trỏ đến các Person là các cán bộ
- Hàm thiết lập
- Hàm huỷ bỏ
- Hàm nhập danh sách cán bộ
- Hàm hiển thị danh sách cán bộ
c Viết chương trình cho phép nhập danh sách các cán bộ, hiển thị danh sách cán bộ Nhập vào một xâu họ tên ht, kiểm tra xem trong danh sách các cán bộ có người có Name là ht hay không? Nếu có hiển thị thông tin của người đó, nếu không thông báo ra màn hình là không tồn tại
#include<iostream.h>
#include<conio.h>
#include<string.h>
#include<stdio.h>
class Person{
private:
char name[20];
char address[30];
int phone;
public:
Person(char*ten=NULL,char
*dc=NULL,int ph=0)
{
strcpy(name,ten);
strcpy(address,dc);
phone=ph;
}
~Person()
{
delete name;
delete address;
}
char *getname()
{return name;
}
char *getaddress()
{
return address;
}
int getphone()
{ return phone;
} void in(){
cout<<"\n\n Name :"<<name;
cout<<"\n\n Address :"<<address;
cout<<"\n\n Phone :"<<phone;
} class List{
private:
int maxsize;
Person *people;
public:
List(int max=0) {
maxsize=max;
people=new Person [maxsize];
}
~List() { delete people;
} void nhap() { char ten[10],diachi[30];
int phone;
cout<<"Nhap maxsize ";cin>>maxsize;
for(int i=0;i<maxsize;i++) {
cout<<"Nhap ten ";gets(ten);
cout<<"Nhap dia chi";gets(diachi);
cout<<"Nhap Phone ";cin>>phone;
people[i]=Person(ten,diachi,phone);
}
} Duc' Hung` jtyjljl: void in() {
for(int i=0;i<maxsize;i++) { cout<<"\n -\n";
people[i].in();
cout<<"\n";
} } void tim(char *ten){
int d=-1;
for(int i=0;i<maxsize;i++) if(strcmp(people[i].getname(),ten)==0) d=i;
if(d==-1) cout<<"\n\n khong co"; else people[d].in();
}
};
void main() {char ten[10];
List a;
a.nhap();
a.in();
cout<<"Nhap ten can tim ";gets(ten); a.tim(ten);
}
Câu 1.12:
a Xây dựng 1 lớp MyTime mô tả các đối tượng thời gian, lớp gồm các thành phần:
- Hàm thiết lập
- Hàm nhập dữ liệu
- Hàm hiển thị dữ liệu dạng: giờ : phút : giây
- Khai báo toán tử >= là hàm bạn của lớp MyTime dùng để so sánh 2 đối tuợng MyTime
b Định nghĩa toán tử >=
Trang 5c Viết chương trình nhập dữ liệu vào từ bàn phím để tạo một mảng 5 đối tượng MyTime Tìm và in ra đối tượng lớn nhất, bé nhất
Câu 1.13:
a Xây dựng 1 lớp Student mô tả các sinh viên của một lớp học, lớp gồm các thành phần:
- Các thuộc tính mô tả họ tên, điểm kỳ 1, điểm kỳ 2, điểm trung bình cả năm (điểm trung bình cả năm = (điểm kỳ 1 + 2*điểm kỳ 2)/3)
- Hàm thiết lập
- Hàm nhập dữ liệu
- Hàm hiển thị dữ liệu
- Toán tử > để so sánh hai sinh viên theo tiêu chuẩn điểm trung bình cả năm
b Viết chương trình nhập dữ liệu vào từ bàn phím để tạo một mảng 5 sinh viên Hiển thị danh sách những sinh viên vừa nhập Sắp xếp danh sách sinh viên theo thứ tự giảm dần của điểm trung bình cả năm Hiển thị danh sách sinh viên sau khi sắp xếp
Câu 1.14:
a Xây dựng 1 lớp Mydate mô tả thông tin ngày, tháng, năm Lớp gồm các thành phần:
- Các thuộc tính mô tả ngày, tháng, năm
- Hàm thiết lập
- Hàm nhập ngày, tháng, năm (không cần biện luận dữ liệu)
- Hàm hiển thị thông tin về ngày, tháng, năm theo dạng: ngày-tháng-năm
- Toán tử = = dùng để so sánh 2 đối tượng Mydate
b Viết chương trình nhập dữ liệu để tạo 1 mảng 5 đối tượng kiểu Mydate và nhập dữ liệu để tạo 1 đối tượng x có kiểu Mydate Tìm kiếm và thông báo ra màn hình phần tử x có trong mảng hay không?
Câu 1.15:
a Tạo lớp Vector để mô tả các đối tượng vector, lớp gồm các thành phần:
- Số phần tử: n
- Một con trỏ *v trỏ đến các phần tử dữ liệu
- Hàm thiết lập một tham số dùng để khởi tạo n và cấp phát bộ nhớ cho các phần tử dữ liệu
- Hàm thiết lập sao chép
- Hàm huỷ bỏ
- Hàm nhập các phần tử của vector
- Hàm hiển thị các phần tử dữ liệu của vector
- Toán tử = để gán một vector cho một vector
- Khai báo toán tử + là hàm bạn của lớp Vector, dùng để cộng 2 vector, kết quả trả về là một vector
b Định nghĩa toán tử +
c Viết chương trình nhập vào 2 vector, tính và hiển thị tổng của chúng ra màn hình
Câu 1.16:
a Xây dựng 1 lớp PS mô tả các đối tượng phân số, lớp gồm:
- Các thuộc tính mô tả tử số và mẫu số của phân số
- Hàm thiết lập
- Hàm hiển thị phân số
- Toán tử = = để so sánh 2 đối tượng phân số
Trang 6b Viết chương trình tạo một mảng n đối tượng phân số Nhập tiếp một phân số, tìm kiếm phân số đã nhập có trong mảng hay không ?
Câu 1.17:
a Xây dựng một lớp Complex mô tả các đối tượng số phức, lớp gồm các thành phần:
- Các thuộc tính a, b là các số thực mô tả phần thực và phần ảo của số phức
- Hàm thiết lập
- Hàm nhập số phức
- Hàm in số phức dạng a+ib
- Toán tử = = để so sánh 2 số phức
b Viết chương trình nhập một mảng n số phức Nhập tiếp một số phức và tìm số phức đã nhập có trong mảng số phức hay không ? Nếu có thì hiển thị vị trí của nó có trong mảng
Câu 1.18:
a Xây dựng 1 lớp Student mô tả các sinh viên của một lớp học, lớp gồm các thành phần:
- Các thuộc tính mô tả họ tên, điểm kỳ 1, điểm kỳ 2
- Hàm thiết lập
- Hàm nhập dữ liệu
- Hàm hiển thị dữ liệu
- Hàm kiểm tra để kiểm tra xem sinh viên có đạt điểm trung bình cả năm>=5 hay không? (điểm trung bình cả năm=điểm kỳ 1 + 2*điểm kỳ 2)/3)
b Viết chương trình nhập dữ liệu vào từ bàn phím để tạo một mảng 5 sinh viên Hiển thị danh sách những sinh viên vừa nhập Sau đó, hiển thị danh sách những sinh viên có điểm trung bình cả năm >=5
Câu 1.19:
a Xây dựng 1 lớp PS mô tả các đối tượng phân số, lớp gồm các thành phần:
- Các thuộc tính mô tả tử số và mẫu số của phân số
- Hàm thiết lập phân số
- Hàm nhập phân số
- Hàm in phân số dạng tử số/mẫu số
- Toán tử >= dùng để so sánh 2 phân số
c Viết chương trình nhập dữ liệu vào từ bàn phím để tạo một mảng 5 phân số Tìm và in ra phân số lớn nhất
Câu 1.20 :
a Xây dựng một lớp Complex mô tả các đối tượng số phức, lớp gồm các thành phần:
- Các thuộc tính a, b là các số thực mô tả phần thực và phần ảo của số phức
- Hàm thiết lập
- Hàm thiết lập sao chép
- Hàm nhập số phức
- Hàm in số phức dạng a+ib
- Toán tử + dùng để tính tổng 2 số phức
- Toán tử - dùng để tính hiệu 2 số phức
b Viết chương trình nhập dữ liệu vào từ bàn phím để tạo hai đối tượng số phức x, y Tính và in ra tổng, hiệu 2 số phức đó
Trang 7Phần 2 : Kế thừa
a Xây dựng 1 lớp MyAttr mô tả các thuộc tính của tệp Lớp gồm các thành phần:
- Thuộc tính Attr mô tả số hiệu thuộc tính của tệp là một số nguyên
- Hàm thiết lập
- Hàm hiển thị số hiệu thuộc tính tệp
b Xây dựng 1 lớp Mydate mô tả thông tin ngày, tháng, năm Lớp gồm các thành phần:
- Các thuộc tính mô tả ngày, tháng, năm
- Hàm thiết lập
- Toán tử > để so sánh 2 đôi tượng Mydate
- Hàm hiển thị thông tin về ngày, tháng, năm theo dạng: ngày-tháng-năm
c Xây dựng 1 lớp Myfile kế thừa từ 2 lớp MyAttr và Mydate và đồng thời bổ sung thêm các thành
phần:
- filename: Mô tả tên tệp, là một xâu không quá 255 ký tự
- filesize: Mô tả kích thước tệp, là một số nguyên
- Hàm thiết lập
- Hàm hiển thị thông tin, kích thước, thời gian và số hiệu thuộc tính tệp
d Viết chương trình khai báo một mảng 4 con trỏ đối tượng kiểu Myfile, nhập dữ liệu vào để tạo 4 con
trỏ đối tượng Myfile Sắp xếp các đối tượng tăng dần theo ngày tháng và in ra màn hình các đối tượng
đã sắp xếp
Câu 2.2:
a.Xây dựng 1 lớp MyDate mô tả thông tin ngày, tháng, năm Lớp gồm các thành phần:
- Các thuộc tính mô tả ngày, tháng, năm
- Hàm thiết lập
- Hàm hiển thị thông tin về ngày, tháng, năm theo dạng: ngày-tháng-năm
- Toán tử > so sánh 2 đối tượng Mydate.
b.Xây dựng 1 lớp Person mô tả thông tin về một người, lớp kế thừa từ lớp MyDate và bổ sung thêm:
- Name: Mô tả tên của người
- Address: Mô tả địa chỉ của người
- Phone: Mô tả số điện thoại
- Hàm thiết lập
- Hàm hiển thị thông tin về 1 người
c Xây dựng một lớp Officer mô tả các thông về một cán bộ viên chức, lớp kế thừa từ lớp Person và
bổ sung thêm:
- Salary: Mô tả lương của cán bộ, là một số thực
- Hàm thiết lập
- Hàm hiển thi thông tin về một cán bộ viên chức
d Viết chương trình khai báo một mảng 4 con trỏ đối tượng kiểu Officer, nhập dữ liệu vào để tạo 4 đối
tượng này, sắp xếp theo ngày tháng tăng dần và hiển thị ra màn hình
Câu 2.3:
a Xây dựng một lớp SV để mô tả các sinh viên trong một Khoa của một Trường Đại học, lớp SV gồm
các thành phần sau:
- Lop: Mô tả lớp học của sinh viên
Trang 8- Hoten: Mô tả họ tên của sinh viên.
- Hàm thiết lập
- Hàm huỷ bỏ
- Hàm hiển thị thông tin về một SV
b Xây dựng một lớp SVSP để mô tả các sinh viên thuộc hệ sư phạm Lớp được kế thừa từ lớp SV và
bổ sung thêm các thành phần sau:
- Dtb: Mô tả điểm trung bình của sinh viên
- Hocbong: Mô tả học bổng của sinh viên
- Hàm thiết lập
- Hàm hiển thị thông tin về một SVSP
c Xây dựng một lớp SVCN để mô tả các sinh viên thuộc hệ cử nhân Lớp được kế thừa từ lớp SVSP
và bổ sung thêm các thành phần sau:
- Hocphi: Mô tả học phí của sinh viên cử nhân
- Hàm thiết lập
- Hàm hiển thị thông tin về một SVCN
d Viết chương trình khai báo một mảng 3 con trỏ đối tượng kiểu SVCN, nhập dữ liệu vào để tạo 3 đối tượng SVCN Gọi hàm hiển thị của lớp SVCN thông qua các con trỏ này để in thông tin về một SVCN
ra màn hình
Câu 2.4: Xây dựng chương trình quản lý sách và băng video của một cửa hàng, chương trình gồm:
a Xây dựng 1 lớp Media mô tả các đối tượng phương tiện truyền thông, lớp gồm:
- Thuộc tính tên gọi, giá bán
- Hàm thiết lập hai tham số
- Hàm nhập dữ liệu
- Hàm hiển thị dữ liệu
b Xây dựng lớp Book mô tả các đối tượng sách Lớp được kế thừa từ lớp Media và bổ sung thêm:
- Thuộc tính mô tả số trang, tác giả
- Hàm thiết lập
- Hàm nhập dữ liệu
- Hàm hiển thị dữ liệu
c Xây dựng lớp Video mô tả các đối tượng băng video, lớp kế thừa từ lớp Media và bổ sung thêm:
- Thuộc tính thời gian chạy, nhà sản xuất
- Hàm thiết lập
- Hàm nhập dữ liệu
- Hàm hiển thị dữ liệu
d Viết chương trình khai báo 2 mảng con đối tượng, một mảng gồm các đối tượng sách, một mảng gồm các đối tượng băng video Nhập dữ liệu cho các mảng đối tượng, hiển thị dữ liệu của các đối tượng sách và băng video ra màn hình
Câu 2.5:
a Xây dựng 1 lớp MyAddress mô tả thông tin về địa chỉ của một con người Lớp gồm các thành phần:
- Các thuộc tính mô tả Tỉnh và Huyện
- Hàm thiết lập
- Hàm hủy bỏ
- Hàm hiển thị thông tin về Tỉnh và Huyện
Trang 9b Xây dựng một lớp Person mô tả các thông tin về người Lớp được kế thừa từ lớp MyAddress và bổ
sung thêm các thành phần:
- Name: Mô tả tên của người
- Phone: Mô tả số điện thoại
- Hàm thiết lập
- Hàm hủy bỏ
c Xây dựng một lớp Officer mô tả các thông về một cán bộ viên chức, lớp kế thừa từ lớp Person và
bổ sung thêm các thành phần:
- Salary: Mô tả lương của cán bộ
- Hàm thiết lập
- Hàm hiển thị thông tin về một đối tượng Officer ra màn hình
- Toán tử > để so sánh 2 đối tượng Officer dựa trên Salary
d Viết chương trình khai báo một mảng 4 con trỏ đối tượng kiểu Officer, nhập dữ liệu, sắp xếp tăng dần theo lương của các đối tượng và hiển thị các đối tượng ra màn hình
Câu 2.6:
a Xây dựng một lớp Printer mô tả các đối tượng máy in, lớp gồm các thành phần:
- Thuộc tính Name mô tả tên máy in
- Thuộc tính Soluong mô tả số lượng trong kho
- Hàm nhapkho(int q) để nhập vào kho q số lượng mặt hàng
- Hàm xuatkho(int q) để xuất ra khỏi kho q số lượng mặt hàng
b Xây dựng lớp Laser mô tả các máy in Laser, lớp được kế thừa từ lớp Printer và có thêm thuộc tính
Dpi
c Xây dựng lớp ColorPrinter mô tả các máy in màu, lớp được kế thừa từ lớp Printer và có thêm
thuộc tính Color
d Xây dựng lớp ColorLaser mô tả các máy in Laser màu, lớp được kế thừa từ lớp Laser và lớp ColorPrinter.
e Viết chương trình tạo 3 đối tượng kiểu ColorLaser Gọi các hàm nhập kho, xuất kho và in ra số
lượng có trong kho
Câu 2.7:
a Xây dựng một lớp SV để mô tả các sinh viên trong một Khoa của một Trường Đại học, lớp SV gồm
các thành phần sau:
- Lop: Mô tả lớp học của sinh viên
- Hoten: Mô tả họ tên của sinh viên
- Hàm thiết lập
- Hàm huỷ bỏ
- Hàm hiển thị thông tin về một SV
b Xây dựng một lớp SVTC để mô tả các sinh viên thuộc hệ tại chức Lớp được kế thừa từ lớp SV và
bổ sung thêm các thành phần sau:
- Hocphi: Mô tả học phí
- Hàm thiết lập
- Hàm hiển thị thông tin về một SVTC
c Xây dựng một lớp SVCN để mô tả các sinh viên thuộc hệ cử nhân Lớp được kế thừa từ lớp SVTC
và bổ sung thêm các thành phần sau:
Trang 10- Dtb: Mô tả điểm trung bình của sinh viên cử nhân.
- Hocbong: Mô tả học bổng của sinh viên cử nhân
- Hàm thiết lập
- Hàm hiển thị thông tin về một SVCN
- Toán tử > so sánh 2 đối tượng SVCN theo Dtb
d Viết chương trình khai báo một mảng 3 con trỏ đối tượng kiểu SVCN, nhập dữ liệu vào để tạo 3 đối tượng SVCN, sắp xếp các đối tượng SVCN theo điểm trung bình giảm dần và in ra màn hình
Câu 2.8:
a Xây dựng 1 lớp Mytime mô tả thông tin về giờ, phút, giây Lớp gồm các thành phần:
- Các thuộc tính mô tả giờ, phút, giây
- Hàm nhập giờ, phút, giây (không cần biện luận dữ liệu nhập)
- Hàm hiển thị thông tin về giờ, phút, giây theo dạng: Giờ : phút : giây
b Xây dựng 1 lớp Mydate mô tả thông tin ngày, tháng, năm Lớp gồm các thành phần:
- Các thuộc tính mô tả ngày, tháng, năm
- Hàm nhập ngày, tháng, năm (không cần biện luận dữ liệu nhập)
- Hàm hiển thị thông tin về ngày, tháng, năm theo dạng: Ngày-tháng-năm
c Xây dựng 1 lớp Myfile kế thừa từ 2 lớp Mydate và Mytime đồng thời bổ sung thêm các thành
phần:
- filename: Mô tả tên tệp, là một xâu không quá 255 ký tự
- filesize: Mô tả kích thước tệp, là một số nguyên
- Hàm nhập dữ liệu
- Hàm hiển thị tên tệp, kích thước, ngày tháng năm và giờ phút giây
- Toán tử > để so sánh 2 đối tượng Myfile dựa trên filesize.
d Viết chương trình khai báo một mảng 3 con trỏ đối tượng kiểu Myfile, nhập dữ liệu vào để tạo các
đối tượng Myfile Sắp xếp các đối tượng theo kích thước tệp giảm dần và in ra cac đối tượng đã sắp
Câu 2.9:
a Xây dựng 1 lớp MyColor mô tả các thông tin về màu Lớp gồm các thành phần:
- Thuộc tính Color mô tả số hiệu màu là một số nguyên
- Hàm thiết lập
- Hàm hiển thị số hiệu màu
b Xây dựng 1 lớp Point mô tả các đối tượng điểm trên mặt phẳng Lớp gồm các thành phần:
- Các thuộc tính x, y mô tả toạ độ của điểm
- Hàm thiết lập
- Hàm tịnh tiến điểm đến toạ độ x+dx, y+dy
- Hàm hiển thị toạ độ của điểm trong mặt phẳng
c Xây dựng 1 lớp Triangle mô tả các đối tượng tam giác Lớp được kế thừa từ lớp MyColor và bổ
sung thêm các thành phần:
- Ba đỉnh của tam giác là 3 điểm A, B, C
- Hàm thiết lập tam giác tại 3 điểm X, Y, Z và màu bằng k
- Hàm move(dx, dy) để tịnh tiến tam giác đến vị trí mới:
A.x=A.x+dx; A.y=A.y+dy; B.x=B.x+dx; B.y=B.y+dy; C.x=C.x+dx; C.y=C.y+dy;
- Hàm hiển thị toạ độ đỉnh của tam giác, màu của tam giác