Nội dung Bài tập
Mã:
OOP_GK_QLThuVien
Tên:
Quản Lí Thư Viện
Dạng thi:
oi
Thang điểm:
10 điểm
Giới hạn thời gian:
1 giây
Giới hạn bộ nhớ:
256 MB
Nguồn bài tập:
Nhóm ILU
Được tạo bởi:
4901104035

Nhà sách FIT tại HCMUE, do quá nhiều lượt đọc, mượn sách và quá trình tính toán hoá đơn rất phức tạp nên thủ thư trường đã cập nhật hệ thống quản lý thư viện kỹ thuật số để dễ dàng quản lý. Bạn cần phải giúp thủ thư thiết kế một hệ thống quản lý và tính toán các hóa đơn bao gồm thông tin khách hàng, thông tin sách mượn, tổng hoá đơn và tiền trả lại lại cho khách.

Đối với mỗi khách hàng ta cần quản lí các thông tin sau: 

- Loại khách hàng 

- Hạng của khách hàng 

- Mã số khách hàng 

- Họ và tên khách hàng 

- Số điện thoại khách hàng 

- Danh sách các quyển sách mượn: 

+ Mã của cuốn sách 

+ Số ngày mượn sách 

+ Phí cọc sách 

+ Số lượng sách mượn 

- Tiền phí mượn sách (tổng hoá đơn) 

- Số tiền mà khách hàng đưa

Trong đó tiền phí mượn là số tiền phải trả để mượn quyển sách trong N ngày mượn, đây là thuộc tính dành cho tất cả khách hàng, phí của từng loại sách (sau 1 ngày) và phí cọc mỗi loại sách như sau:

- Sách giáo khoa – (Mã: SGK) 

+ Phí mượn: 1.000 VND 

+ Phí cọc: 30.000 VND 

- Sách giáo trình – (Mã: SGT) 

+ Phí mượn: 1.100 VND 

+ Phí cọc: 35.000 VND; 

- Sách pháp luật – (Mã: SPL) 

+ Phí mượn: 1.500 VND 

+ Phí cọc: 35.000 VND 

- Tạp chí khoa học – (Mã: SCI) 

+ Phí mượn: 2.000 VND 

+ Phí cọc: 20.000 VND 

- Sách ngoại ngữ – (Mã: EB) 

+ Phí mượn: 3.000 VND 

+ Phí cọc: 40.000 VND 

Trong các loại khách đến thư viện được chia thành 2 loại: giảng viên, giáo viên (GV); sinh viên, học sinh (HS). 

- Đối với khách hàng là GV: 

+ Không tính phí cọc sách. 

+ Nếu thời gian mượn <= 15 ngày thì không tính phí mượn 

+ Nếu thời gian mượn > 15 và <=30 ngày thì tính phí mượn như trên 

+ Nếu thời gian mượn > 30 ngày thì phí mượn tăng 3% với mỗi ngày 

=> Phí mượn sau N ngày = Phí mượn ban đầu x (1+0,03) ^ N x Số lượng quyển sách đã mượn ở loại sách đó  

- Đối với khách hàng là HS: 

+ Phí cọc = Tiền cọc của cuốn sách * Số lượng mượn 

+ Nếu thời gian mượn <= 15 ngày thì phí mượn như trên 

+ Nếu thời gian mượn > 15 ngày thì phí mượn tăng 5% cho mỗi ngày 

=? Phí mượn sau N ngày = Phí mượn ban đầu x (1+0,05) ^ N x Số lượng quyển sách đã mượn ở loại sách đó 


==> Như vậy tổng hoá đơn = Phí mượn sau N ngày mượn + Phí cọc (nếu có) 


- Nếu tổng số sách mượn >=10 thì: 

+ Đối với khách hàng là GV: tổng hoá đơn=tổng hoá đơn x (1-0.5) 

- Nếu hạng của khách hàng là :

+ Vang: tổng hoá đơn=tổng hoá đơn x (1-0.3) 

+ Bac: tổng hoá đơn=tổng hoá đơn x (1-0.2) 

+ Dong: tổng hoá đơn=tổng hoá đơn x (1-0.1) 

+ None: không giảm giá 


Input: 

Dòng 1: Nhập vào số lượng khách hàng.

Dòng 2: Nhập vào loại khách hàng theo cấu trúc

GV – Khách hàng là giảng viên, giáo viên.

HS – Khách hàng là học sinh, sinh viên.

Dòng 3: Nhập vào hạng của khách hàng 

Dòng 4: Mã số khách hàng.

Dòng 5: Họ và tên khách hàng

Dòng 6: Số điện thoại khách hàng

Dòng 7: Nhập vào m là số sách mượn

m dòng tiếp theo, mỗi dòng chứa lần lượt mã sách mượn, thời gian mượn, số quyển sách cần mượn (mỗi số cách nhau bởi dấu cách).

Dòng m+1: Số tiền khách đưa


Output:

Dòng 1: Xuất loại khách hàng

Nếu loại khách hàng là GV thì xuất “GiangVien, GiaoVien” 

Nếu loại khách hàng là HS thì xuất “HocSinh, SinhVien”

Dòng 2: Xuất hạng khách hàng

Dòng 3: Mã số khách hàng.

Dòng 4: Tên khách hàng.

Dòng 5: Số điện thoại

Dòng 6: Xuất m là số lượng sách đã mượn

m dòng tiếp theo mỗi dòng xuất “tên sách đã mượn – Số ngày mượn – Số lượng sách đã mượn ở loại sách này” (Xem ví dụ để hiểu rõ hơn)

Dòng m+1: Xuất tổng số tiền phí cho m quyển sách

Dòng m+2: Xuất số tiền thừa phải thối lại cho khách

Lưu ý:

Giữa mỗi khách hàng đều xuống dòng (trừ khách hàng cuối cùng) - Xem ví dụ để hiểu rõ hơn

Khi cout cần kèm theo fixed (VD: cout << fixed << tongHD;) để có thể in ra kết quả chính xác nhất

Ví dụ:

Input

Output

3

GV

Bac

GV_02

Red Hill

0342323223

2

SGK 13 13

SGT 14 90

100000


HS

Dong

HS_01

Hokage

0987654321

2

SGK 90 1

SGT 15 1

658724


HS

Bac

HS_02

Kudo Kaito Shinichi Kid

0246813579

3

SGK 18 5

SGT 10 9

SCI 8 7

123456

Loai Khach Hang: GiangVien/GiaoVien

Hang Khach Hang: Bac

Ma So Khach Hang: GV_02

Ho va Ten: Red Hill

So Dien Thoai: 0342323223

So quyen sach muon: 2

Danh Sach Cac Quyen Sach Muon: 

-Sach Giao Khoa 13-Ngay 13-Quyen

-Sach Giao Trinh 14-Ngay 90-Quyen

Tong Tien: 0

Tien Tra Lai: 100000.000000


Loai Khach Hang: HocSinh/SinhVien

Hang Khach Hang: Dong

Ma So Khach Hang: HS_01

Ho va Ten: Hokage

So Dien Thoai: 0987654321

So quyen sach muon: 2

Danh Sach Cac Quyen Sach Muon: 

-Sach Giao Khoa 90-Ngay 1-Quyen

-Sach Giao Trinh 15-Ngay 1-Quyen

Tong Tien: 92.775159

Tien Tra Lai: 658631.224841


Loai Khach Hang: HocSinh/SinhVien

Hang Khach Hang: Bac

Ma So Khach Hang: HS_02

Ho va Ten: Kudo Kaito Shinichi Kid

So Dien Thoai: 0246813579

So quyen sach muon: 3

Danh Sach Cac Quyen Sach Muon: 

-Sach Giao Khoa 18-Ngay 5-Quyen

-Sach Giao Trinh 10-Ngay 9-Quyen

-Tap Chi Khoa Hoc 8-Ngay 7-Quyen

Tong Tien: 507.530000

Tien Tra Lai: 122948.470000





    Quảng cáo
       Ngôn ngữ : 

       Theme : 
Mời bạn soạn code



		



      Ai có thể xem bài này : 

Thông tin



Phần thảo luận