Bài giảng Phương pháp lập trình hướng đối tượng - Tuần 8: Bài tập kế thừa và đa xạ - Phạm Tú San

Tuần 08:  
Bài tꢀp kꢁ thꢂa và đa xꢃ  
Bài tꢀp 8.1  
class A  
{ public:  
A(int iX) { }  
//(1)  
Cho biết thứ tự gọi hàm dựng với:  
a) void main() { C c(1, 2, 3); }  
};  
class B: public A  
{ public:  
b) void main() { C c(4);  
c) void main() { C c;  
}
}
B(): A(0) { }  
//(2)  
B(int iX, int iY): A(iX) { } //(3)  
};  
class C: public B  
{ public:  
C() { }  
//(4)  
//(5)  
C(int iZ) { }  
C(int iX, int iY, int iZ): B(iX, iY) { }  
//(6)  
};  
Bài tꢀp 8.2  
class GiaoVien  
{private:  
string  
mHoTen;  
float  
int  
mMucLuong;  
mSoNgayNghi;  
public:  
float TinhLuong() { return mMucLuong – mSoNgayNghi * 10000; }  
};  
class GVCN: public GiaoVien  
{private:  
string  
mLopCN;  
};  
Xây dựng hàm dựng cho lớp GiaoVien, khởi tạo với:  
- Họ tên cho trước, mức lương 500000, số ngày nghỉ 0.  
- Họ tên, mức lương cho trước, số ngày nghỉ 0.  
- Họ tên, mức lương, số ngày nghỉ cho trước.  
Xây dựng hàm dựng cho lớp GVCN, khởi tạo với:  
- Họ tên, lớp chủ nhiệm cho trước, mức lương 500000, số ngày nghỉ 0.  
- Họ tên, mức lương, lớp chủ nhiệm cho trước, số ngày nghỉ 0.  
- Họ tên, mức lương, số ngày nghỉ, lớp chủ nhiệm cho trước.  
Bài tꢀp 8.3  
Cho sơ đồ lớp  
như hình bên.  
Hãy viết code  
cho các lớp  
bên  
Viết hàm  
main cho  
phép người  
dùng khởi tạo  
rồi điều khiển  
1 loại xe bất kì  
Bài tꢀp 8.4  
Một chiếc xe máy chạy 100km tốn 2lit xăng, cứ chở  
thêm 10kg hàng xe tốn thêm 0.1lit xăng.Một chiếc xe  
tải chạy 100km tốn 20lit xăng, cứ chở thêm 1000kg  
hàng xe tốn thêm 1lit xăng.  
Dùng kế thừa xây dựng lớp XeMay và XeTai cho phép:  
Chất một lượng hàng lên xe.  
Bỏ bớt một lượng hàng xuống xe.  
Đổ một lượng xăng vào xe.  
Cho xe chạy một đoạn đường.  
Kiểm tra xem xe đã hết xăng chưa.  
Cho biết lượng xăng còn trong xe.  
Bài 8.5  
Hãy viết chương trình nuôi thú (chó & mèo) sao cho  
tính tái sử dụng được cao nhất:  
Mỗi con Chó và Mèo đều có tên và trọng lượng của nó.  
Mỗi tháng ta đều phải mua thức ăn để nuôi chúng với số tiền  
ꢀ Chó: Trꢀng lưꢁng × 15000₫, và  
ꢀ Mèo: Trꢀng lưꢁng × 12000₫ – sꢂ chuꢃt ×1000₫  
• ꢁ đây “sꢂ chuꢃt” là tꢂng sꢃ chuꢄt bꢅt đưꢆc trong tháng. Và  
mꢇi tháng (sau khi mua thꢈc ăn xong) thì sꢃ chuꢄt đưꢆc reset  
lꢉi thành 0.  
Ngoài ra, chúng còn có các hành đꢄng khác:  
ꢀ Kêu: In tiꢊng kêu ra màn hình.  
ꢀ Mèo bꢄt chuꢃt: tăng sꢃ chuꢄt bꢅt đưꢆc lên 1 lưꢆng xác đꢋnh.  
Bài 8.6  
Một nông trại chăn nuôi có 2loại gia súc: bò,  
cừu. Mỗi con đều có cân nặng, giới tính riêng.  
Tất cả gia súc ở mỗi loại đều sinh con, số lượng  
sinh của mỗi gia súc là ngẫu nhiên.  
Bò có thể cho sữa, số lít sữa là ngẫu nhiên  
Yêu cầu:  
Cho tất cả các gia súc trong nông trại kêu đói  
Tìm gia súc nặng nhất trong nông trại  
Đếm số gia súc mỗi loại  
Cho các gia súc sinh con. Sau một đợt sinh, thống  
kê lại số bò và cừu trong nông trại.  
Bài 8.7  
Công ty ABC cần xây dựng một ứng dụng quản lý nhân  
sự và tính lương cho nhân viên trong công ty như sau:  
Quản lý thông tin nhân viên (mã, họ tên, ngày sinh, địa chỉ)  
Tính lương cho nhân viên  
Hiện công ty có 3 loại nhân viên và cách tính lương như  
sau:  
Nhân viên sản xuất  
: số sản phẩm * 20.000 đ  
Nhân viên công nhật  
: số ngày * 50.000 đ  
Hãy viêt chương trình quản lý và tính tổng lương nhân  
viên  
Xuất bảng lương nhân viên  
Đếm số lượng nhân viên sản xuất trong công ty  
Tìm nhân viên có lương cao nhất  
Bài 8.8  
Một doanh nghiệp có một quỹ lương chung cần  
quản lý. Quỹ lương bao gồm số tiền dư hiện tại,  
cho phép thu thêm tiền và chi lương cho nhân  
viên. Mỗi khi thu thêm hoặc chi lương thì chi  
tiết thu chi (số tiền, ngày) sẽ được lưu xuống  
file log.txt. Sử dụng mẫu singleton viết lớp mẫu  
lương. Sau đó viết hàm main minh họa cho  
phép nhiều đối tượng cùng truy xuất và sử  
dụng quỹ lương.  
pdf 9 trang myanh 26360 Free
Bạn đang xem tài liệu "Bài giảng Phương pháp lập trình hướng đối tượng - Tuần 8: Bài tập kế thừa và đa xạ - Phạm Tú San", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

File đính kèm:

  • pdfbai_tap_phuong_phap_lap_trinh_huong_doi_tuong_tuan_8_bai_tap.pdf