BÀI TẬP BUỔI 6
Bài tập
1:
Tìm hiểu lời goi hàm từ con trỏ với các hàm thông
thường và hàm ảo.
Xây dựng lớp DongVat gồm phương thức và thuộc
tính sau:
Thuộc
tính canNang
kiểu double: Biểu diễn cân nặng của động vật
Phương
thức:
-
Hàm tạo một đối dongVat(double w): Khởi tạo cho cân nặng bằng w
-
Hàm inDL():
In ra thông tin về cân nặng của động vật
Xây dựng lớp SuTu kế thừa từ DongVat: Ngoài các thuộc
tính và phương thức được thừa hưởng từ lớp cha, nó còn có các thuộc tính và
phương thức sau:
Thuộc
tính tocDo
kiểu double: Tốc độ chạy của sư tử
Phương
thức:
Hàm tạo hai đối SuTu(double
w, double s): Khởi tạo cho cân nặng và tốc độ của sư tử tương ứng bằng
w và s
Hàm inDL():
In ra thông tin về cân nặng và tốc độ của sư tử
Xây dựng lớp TranNuoc kế thừa từ DongVat:
Ngoài các thuộc tính và phương thức được thừa hưởng từ lớp cha, nó còn có các
thuộc tính và phương thức sau:
Thuộc
tính: chieuDai kiểu double: chiều dài của trăn nước
Phương
thức:
Hàm tạo hai đối TranNuoc
(double w, double t): Khởi tạo cho cân nặng và chiều dài của trăn nước
tương ứng bằng w và t
Hàm inDL():
In ra thông tin về cân nặng và độ dài của chăn nước
Viết hàm main() thực hiện như sau:
- Khai
báo đối tượng s1 thuộc lớp SuTu và t1 thuộc lớp TranNuoc.
Sử dụng các hàm tạo có 2 đối).Gọi hàm inDL trên các đối tượng s1 và
t1.
Biên dịch và chạy chương trình => Kết luận
- Sửa
chương trình:. Khai báo dv1 là con trỏ thuộc kiểu DongVat.
Gán dv1
bằng địa chỉ của s1. Gọi hàm inDL thông qua con trỏ dv1.
Sau đó thay đổi dv1 sao cho nó chứa địa chỉ của t1. Gọi hàm inDL
thông qua con trỏ dv1. => Rút ra kết luận
- Sửa
chương trình: Khai báo phương thức inDL
trong lớp DongVat là hàm ảo (virtual). Khai báo dv1 là con trỏ thuộc kiểu DongVat.
Gán dv1 bằng địa chỉ của s1. Gọi hàm inDL thông qua con trỏ dv1.
Thay đổi dv1 sao cho nó chứa địa chỉ
của t1. Gọi hàm inDL thông qua con trỏ dv1. => Rút ra kết luận
Bài tập 2:
Xây dựng lớp CPU là lớp biểu diễn con chip của
máy vi tính. Lớp CPU có các thuộc tính và phương thức sau:
Thuộc
tính:
double
tocDo:
Xung nhịp tính theo GHz của con chip
Phương
thức
Hàm
tạo một đối CPU(double s): Khởi tạo cho tốc độ của chip là s
Hàm
sucManh():
Trả lại giá trị của biến tocDo
Hàm xepHang():
xét xem giá trị do hàm sucManh() trả lại có lớn hơn 3 hay
không. Nếu lớn hơn 3 thì in ra thông điệp “Chip này rất mạnh”;
Xây dựng lớp Core2Dual thừa kết từ lớp CPU.
Lớp này không có thêm thuộc tính gì cả.
Phương thức:
Hàm
tạo có một đối số Core2DualT(double s): Khởi tạo cho tốc độ chip là s
Định nghĩa lại phương
thức sucManh
sao cho phương thức này trả lại giá trị bằng 2 * tocDo.
- Viết hàm main sử dụng các lớp này như sau:
Khai báo một biến thuộc
lớp Core2Dual
như sau:
Core2Dual aChip(2);
Gọi phương thức xepHang
trên đối tượng aChip này.
Biên dịch và chạy
chương trình.
- Thay đổi chương trình như sau:
Khai báo phương thức sucManh
ở lớp CPU là phương thức ảo
Biên dịch và chạy
chương trình => Kết luận
Bài tập 3:
Viết chương trình quản
lý sinh viên.
Thông tin của sinh viên
bao gồm
Họ
tên: Chuỗi kí tự
Tuổi: Một số nguyên
Mã số sinh viên: Chuỗi kí tự
Điểm tổng kết: Số thực
Chương trình ứng sẽ có
menu chức năng như sau:
1 – Thêm sinh viên vào danh sách
2 – Xóa sinh viên trong danh sách dựa vào mã số sinh viên
3 – Sửa thông tin của sinh viên trong danh sách
4 – In ra thông tin của toàn bộ sinh viên
5 – Tìm kiếm sinh viên dựa trên mã sinh viên
6 – In ra toàn bộ danh sách các sinh viên có điểm tổng kết
lớn hơn 7
7– Kết thúc chương trình
Chương trình phải cho
phép người dùng nhập lựa chọn chức năng vào từ bàn phím, sau đó thực thi chức
năng tương ứng với lựa chọn. Thao tác này được lặp lại cho đến khi người dùng
nhập vào số 7 (tương ứng với chức năng kết thúc chương trình)
Gợi
ý: Sử dụng danh sách liên kết. Mỗi nút trong danh
sách là một sinh viên.









:)
:-)
:))
=))
:(
:-(
:((
:d
:-d
@-)
:p
:o
:>)
(o)
[-(
:-?
(p)
:-s
(m)
8-)
:-t
:-b
b-(
:-#
=p~
:-$
(b)
(f)
x-)
(k)
(h)
(c)
cheer





viết chương trình quản lý sách báo và tạp chí của thư viện trong trường đại học, hàng tháng gửi về khoa tên của giáo viên vầ sinh viên đã quá thời hạn mượn sách....help me...
Trả lờiXóa