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.
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:
bai_tap_phuong_phap_lap_trinh_huong_doi_tuong_tuan_8_bai_tap.pdf

