Quản lý sinh viên (Bài 6-1)

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 1

  • Xây dựng lớp Nguoi để quản lý một số thông tin gồm: họ và tên, năm sinh và các phương thức gồm:

    • Một số toán tử tạo lập

    • Phương thức nhapTT() để nhập thông tin cho 1 người

    • Phương thức hienThiTT() để hiển thị thông tin của 1 người

  • Xây dựng lớp SinhVien kế thừa từ lớp Người, có thêm các thuộc tính bổ sung: lớp, điểm trung bình và các phương thức gồm:

    • Một số toán tử tạo lập

    • Viết đề phương thức nhapTT() để nhập thông tin cho 1 sinh viên

    • Viết đề phương thức hienThiTT() để hiển thị thông tin của 1 sinh viên

  • Xây dựng lớp Main có các tính năng:

    • Nhập vào danh sách gồm m (2≤m≤60) sinh viên

    • Hiển thị danh sách các sinh viên có điểm trung bình lớn hơn 8.5


Ví dụ:

Input 01:
2
Nguyen Van A
2002
CNTT1
9.1
Nguyen Van B
2003
CNTT2
8.1
Output 01:
Danh sach sinh vien co diem trung binh > 8.5:
Ho ten: Nguyen Van A
Nam sinh: 2002
Lop: CNTT1
Diem trung binh: 9.1

Quản lý sách (bài 6-2)

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 1

  • Hãy xây dựng lớp Sách gồm có:

    • Các thuộc tính: Tên sách, Tác giả, Năm xuất bản

    • Các phương thức:

      Nhập thông tin sách (tên sách, tác giả, năm xuất bản); Hiển thị thông tin sách

      Kiểm tra năm xuất bản có hợp lệ không (không lớn hơn năm hiện tại).

  • Xây dựng lớp SachGiaoKhoa kế thừa từ lớp Sach, thực hiện ghi đè phương thức kiểm tra năm xuất bản chỉ dành cho các sách xuất bản trong 5 năm gần đây.

  • Xây dựng chương trình nhập thông tin sách giáo khoa và hiển thị thông tin của sách đó.


Ví dụ:

Input 01:
Tin Hoc 12
Do Van E
2025
Output 01:
Tin Hoc 12
Do Van E
2025
Input 02:
Sinh Hoc 9
Pham Thi D
2026
Output 02:
Nam xuat ban khong hop le

Quản lý khách hàng (bài 6_3)

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 1

Hãy xây dựng lớp KhachHang gồm có:

  • Các thuộc tính: Họ tên khách hàng, Số điện thoại, Địa chỉ

  • Các phương thức: Nhập thông tin khách hàng (họ tên, số điện thoại, địa chỉ); Hiển thị thông tin khách hàng

Kiểm tra số điện thoại có hợp lệ không (phải đủ 10 số).

Xây dựng lớp KhachHangVIP kế thừa từ lớp KhachHang, thực hiện ghi đè phương thức kiểm tra số điện thoại để chấp nhận thêm đầu số quốc tế (+84).

Xây dựng chương trình nhập thông tin khách hàng VIP và hiển thị thông tin của họ. Yêu cầu bắt các ngoại lệ khi nhập số điện thoại không hợp lệ.


Ví dụ:

Input 01:
Nguyen Van Tuan
123 Luong Ngoc Quyen Street
+84987654321
Output 01:
Nguyen Van Tuan
+84987654321
123 Luong Ngoc Quyen Street
Input 02:
Tran Van Tan
+84987654321
123 Nha Trang Street
Output 02:
INVALID

Tính lương nhân viên (bài 6)

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 1

Xây dựng hệ thống tính lương với lớp cha là NhanVien và hai lớp con kế thừa là NhanVienChinhThuc, NhanVienThoiVu. Mỗi nhân viên đều có thuộc tính ten. Sinh viên cần ghi đè phương thức tinhLuong() cho từng lớp con:

Lương nhân viên chính thức = Lương cơ bản + 2,000,000 (phụ cấp cố định).

Lương nhân viên thời vụ = Số giờ làm * Lương mỗi giờ.


Đầu vào:

Dòng 1: Số nguyên N (1 <= N <= 100) - số lượng nhân viên.

N khối dòng tiếp theo, mỗi khối chứa:

Dòng 1: Loại nhân viên (1 là Chính thức, 2 là Thời vụ).

Dòng 2: Họ tên nhân viên.

Dòng 3: Lương cơ bản (nếu là loại 1) HOẶC chứa 2 số nguyên là Số giờ làm và Lương mỗi giờ (nếu là loại 2).


Đầu ra: In ra thông tin từng nhân viên theo định dạng: Nhan vien: [Họ tên], luong: [Tổng lương] VND.


Input:
2
1
Nguyen Van A
7000000
2
Tran Thi B
80 50000
Output:
Nhan vien: Nguyen Van A, luong: 9000000.0 VND
Nhan vien: Tran Thi B, luong: 4000000.0 VND

Lọc sinh viên xuất sắc (bài 6)

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 1

Áp dụng tính bao đóng (Encapsulation) bằng cách khai báo các thuộc tính là private và cung cấp các phương thức getter/setter public. Khởi tạo lớp Nguoi gồm họ tên, năm sinh. Lớp SinhVien kế thừa từ lớp Nguoi, bổ sung thêm thuộc tính: lớp, điểm trung bình. Hãy lọc và hiển thị danh sách các sinh viên có điểm trung bình lớn hơn 8.5.


Đầu vào:

Dòng 1: Số nguyên M (2 <= M <= 60) - số lượng sinh viên.

M khối dòng tiếp theo, mỗi khối chứa 4 dòng: Họ tên, Năm sinh, Lớp, Điểm trung bình.


Đầu ra:

Danh sách các sinh viên có điểm trung bình > 8.5, in ra theo định dạng: [Họ tên] - [Năm sinh] - [Lớp] - [Điểm TB]. Nếu không có ai, in ra KHOANG TRANG.


Input:
2
Le Van Bao
2005
DTC19
8.6
Tran Thi Cuc
2006
DTC20
7.5
Output:
Le Van Bao - 2005 - DTC19 - 8.6

Kiểm tra tính hợp lệ của sách (bài 6)

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 1

Xây dựng lớp Sach (Tên sách, Tác giả, Năm xuất bản) với phương thức kiểm tra năm xuất bản không được lớn hơn năm hiện tại. Xây dựng lớp SachGiaoKhoa kế thừa lớp Sach, gọi super() trong constructor để khởi tạo. Lớp con ghi đè phương thức kiểm tra để chỉ chấp nhận sách xuất bản trong 5 năm gần đây.


Đầu vào:

Dòng 1: Số nguyên N (1 <= N <= 100) - số lượng sách giáo khoa cần kiểm tra.

N khối dòng tiếp theo: Tên sách, Tác giả, Năm xuất bản. (Giả sử năm hiện tại là 2026).


Đầu ra: Với mỗi cuốn sách, in ra [Tên sách]: HOP LE nếu năm xuất bản nằm trong khoảng 2021-2026. Ngược lại in ra [Tên sách]: KHONG HOP LE.


Input:
2
Toan roi rac
Nguyen Van A
2022
Cau truc du lieu
Tran Binh
2015
Output:
Toan roi rac: HOP LE
Cau truc du lieu: KHONG HOP LE

Lắp ráp phương tiện (bài 6)

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 1

Bài toán rèn luyện tư duy thiết kế quan hệ HAS-A (có một thành viên). Lớp Xe không kế thừa lớp DongCo, mà Xe chứa một đối tượng thuộc lớp DongCo. Lớp DongCo có loại động cơ (Xăng/Điện) và công suất. Lớp Xe có tên xe và phương thức batDauChay() thực hiện gọi phương thức khoiDong() của đối tượng động cơ.


Đầu vào:

Dòng 1: Số nguyên N (1 <= N <= 100) - số lượng xe.

N khối dòng tiếp theo: Tên xe, Loại động cơ, Công suất.


Đầu ra: In quá trình khởi động theo định dạng: Xe [Tên xe] su dung dong co [Loai] - [Cong suat]W dang khoi dong...


Input:
2
VinFast VF8
Dien
300
Toyota Vios
Xang
100
Output:
Xe VinFast VF8 su dung dong co Dien - 300W dang khoi dong...
Xe Toyota Vios su dung dong co Xang - 100W dang khoi dong...

Xác thực khách hàng VIP (bài 6)

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 1

Xây dựng lớp KhachHang với phương thức kiểm tra số điện thoại (phải đúng 10 số và bắt đầu bằng số 0). Lớp KhachHangVIP kế thừa KhachHang, ghi đè logic kiểm tra để số điện thoại hợp lệ có thể chứa 10 số bắt đầu bằng 0, HOẶC 12 ký tự bắt đầu bằng +84.


Đầu vào:

Dòng 1: Số nguyên N (1 <= N <= 100).

N khối dòng tiếp theo: Họ tên, Số điện thoại, Địa chỉ.


Đầu ra: In ra thông tin các khách hàng có số điện thoại hợp lệ theo tiêu chuẩn của KhachHangVIP.

Định dạng: [Họ tên] - [SĐT] - [Địa chỉ].


Input:
3
Ngo Van Kien
0987654321
Thai Nguyen
Pham Thi Lan
+84123456789
Ha Noi
Hoang Tu
0987
Bac Ninh
Output:
Ngo Van Kien - 0987654321 - Thai Nguyen
Pham Thi Lan - +84123456789 - Ha Noi