Bài tập: Viết ứng dụng quản lý có menu thực hiện các phương thức trong lớp List môn Kỹ thuật máy tính | Đại học Bách Khoa, Đại học Đà Nẵng

Bài tập: Viết ứng dụng quản lý có menu thực hiện các phương thức trong lớp List môn Kỹ thuật máy tính | Đại học Bách Khoa, Đại học Đà Nẵng giúp sinh viên tham khảo, ôn luyện và phục vụ nhu cầu học tập của mình cụ thể là có định hướng, ôn tập, nắm vững kiến thức môn học và làm bài tốt trong những bài kiểm tra, bài tiểu luận, bài tập kết thúc học phần, từ đó học tập tốt và có kết quả cao cũng như có thể vận dụng tốt những kiến thức mình đã học

Bài tập 01: Viết ứng d ng qu n lý có menu th c hi c trong l p List. ện các phương thứ
Khai báo l p List: g m 1 n tr v m ng ( co trỏ ảng các đối tượ lớp i t ng s c lđố ượ đượ ựa
ch ênọn theo c a sinh viđề ), khai báo định nghĩa các hàm thành viên c ớp như a l
sau:
- Hi n th ng; ị danh sách đối tượ
- T u m ng, cu i m ng & v trí k b t k ), hêm đối tượng (đầ
- C p nh ng. ật thông tin đối tượ
- Xóa u m ng, cu i m ng & v trí k b t k đối tượng (đầ ỳ);
- ng theo m t thu c tính b t kTìm kiếm đối tượ s d ng thuật toán tìm kiếm (sinh viên tự
lựa ch n thu c tính);
- S p x p m ng theo m t thu c tính b t k s d ng ế ảng các đối tượ thuật toán s p x ếp (sinh
viên t l a ch n thu c tính), s d ng con tr hàm th s p x để ếp tăng dần hoặc giảm
dần.
Lớp i tđố ượng, thuật toán tìm ki m & thu t ế toán s p x p sinh viên l y theo ế đề c a m ình
(file đính kèm).
Lưu ý:
- Sinh viên có th s d ng c u trúc d u; ữ liệ
- M i l p g m 2 file (file .h ch a khai báo l p g ồm khai báo thu c tính c a l p & các hàm
thành viên; file .cpp ch a l p); ứa định nghĩa hàm thành viên củ
- óa toán t nh p xu t cho L p i t ng & L p List, óa toán t truy Đa năng h đố ượ đa năng h
cập n phđế ần t [ ].
Mô t đề
Thuật toán
tìm ki m ế
Mã đề 1
Binary Search
Mã đề 2
Interpolation Search
Thuật toán
sắp x p ế
Mã đề 1
Merge Sort
Mã đề 2
Shell Sort
Mã đề 3
Quick Sort
Lớp đối
tượng
Mã đề 1
Lớp Person :
- Tên (string ho c char* );
- i (int); Tuổ
- a ch (string ho c char*). Đị
- i tính (bool): true nam, false n Giớ
Mã đề 2
Lớp CongTrinhKhoaHoc :
- Mã công trình (string ho c char*);
- t b n (int): gi i h n t v Năm xuấ ừ năm 1900 trở ề sau
- Khu v c xu t b n qu c t , false (bool): true ế – trong nước
Mã đề 3
1) L ớp Date: ngày, tháng, năm
2) Lớp NhanVien:
- nhân viên ho c char*): g m 8 ký t ; (string
- Tên nhân viên (string ho c char*);
- Ngày nh n vào làm vi c (ki u Date);
- i tính (bool): true n , false n ; Giớ am
- Lương (double).
Mã đề 4
1) L ớp Date: ngày, tháng, năm
2) Khai báo l p phòng khách s n (PhongKS):
- phòng (string ho c char*): g 5 ký t ồm ự, trong đó ký tự đầu
là t ng nh n giá tr t , 4 ký t còn l i nh n giá tr t ừ 1 → 5 0
9;
- S i t t ố ngườ ối đa (int): có giá trị ừ 1 → 4.
- Tình tr ng phòng tr (bool): true – ống, false . đã có người ở
- Ngày nh n phòng (ki u Date);
- Ngày tr phòng (ki u Date);
- Giá phòng (double).
* N u tình tr ng true thì Ngày nh n ngày tr phòng ế
NULL, n u tình tr ng false thì ngày nh n ngày tr phòng ế
phải xác định (trong đó ngày trả ph i có giá tr b ng ngày hi n t ại
tr lên)
Mã đề 5
Lớp Sá ch:
- Mã số sách (string ho c char*): g m 9 ký t ự, trong đó ký tự đầu
là t ng nh n giá tr t còn l i nh n giá tr t ừ 1 → 5, 4 ký tự 0 →
9;
- Tên sách (string ho c char*);
- t b n (int): gi i h n 4 s Năm xuấ
- S quy n (int);
- Tình tr ng (bool): true n u các quy ế ển sách chưa cho mượn
hết, false các quy ển sách đã cho mượn hết.
*Lưu ý: nế ặc xóa đối tượu thêm ho ng sách thì tăng, giảm thuộc
tính s quy n, n u thu c tính s quy n = 0 m ế ới xóa đối tượng
sách đó.
| 1/2

Preview text:

Bài tập 01: Viết ứng dụng quản lý có menu thực hiện các phương thức trong lớp List.
Khai báo lớp List: gồm 1 con trỏ trỏ về mảng các đối tượng (lớp đối tượng sẽ được lựa
chọn theo mã đề của sinh viên), khai báo và định nghĩa các hàm thành viên của lớp như sau:
- Hiển thị danh sách đối tượng;
- Thêm đối tượng (đầu mảng, cuối mảng & vị trí k bất kỳ),
- Cập nhật thông tin đối tượng.
- Xóa đối tượng (đầu mảng, cuối mảng & vị trí k bất kỳ);
- Tìm kiếm đối tượng theo một thuộc tính bất kỳ sử dụng thuật toán tìm kiếm (sinh viên tự lựa chọn thuộc tính);
- Sắp xếp mảng các đối tượng theo một thuộc tính bất kỳ sử dụng thuật toán sắp xếp (sinh
viên tự lựa chọn thuộc tính), sử dụng con trỏ hàm để có thể sắp xếp tăng dần hoặc giảm dần.
Lớp đối tượng, thuật toán tìm kiếm & thuật toán sắp xếp sinh viên lấy theo mã đề của mìn h (file đính kèm). Lưu ý:
- Sinh viên có thể sử dụng cấu trúc dữ liệu;
- Mỗi lớp gồm 2 file (file .h chứa khai báo lớp gồm khai báo thuộc tính của lớp & các hàm
thành viên; file .cpp chứa định nghĩa hàm thành viên của lớp);
- Đa năng hóa toán tử nhập xuất cho Lớp đối tượng & Lớp List, đa năng hóa toán tử truy cập đến phần tử []. Mô tả mã đề
Thuật toán Mã đề 1 Binary Search tìm kiếm
Mã đề 2 Interpolation Search
Thuật toán Mã đề 1 Merge Sort sắp xếp Mã đề 2 Shell Sort Mã đề 3 Quick Sort Lớp đối Mã đề 1 Lớp Person: tượng - Tên (string hoặc char*); - Tuổi (int);
- Địa chỉ (string hoặc char*).
- Giới tính (bool): true – nam, false – nữ
Mã đề 2 Lớp CongTrinhKhoaHoc:
- Mã công trình (string hoặc char*);
- Năm xuất bản (int): giới hạn từ năm 1900 trở về sau
- Khu vực xuất bản (bool): true – quốc tế, false – trong nước
Mã đề 3 1) Lớp Date: ngày, tháng, năm 2) Lớp NhanVien:
- Mã nhân viên (string hoặc char*): gồm 8 ký tự;
- Tên nhân viên (string hoặc char*);
- Ngày nhận vào làm việc (kiểu Date);
- Giới tính (bool): true – nữ, false – nam; - Lương (double).
Mã đề 4 1) Lớp Date: ngày, tháng, năm
2) Khai báo lớp phòng khách sạn (PhongKS):
- Mã phòng (string hoặc char*): gồm 5
ký tự, trong đó ký tự đầu
là tầng nhận giá trị từ 1 → 5, 4 ký tự còn lại nhận giá trị từ 0 → 9;
- Số người tối đa (int): có giá trị từ 1 → 4.
- Tình trạng (bool): true – phòng trống, false – đã có người ở.
- Ngày nhận phòng (kiểu Date);
- Ngày trả phòng (kiểu Date); - Giá phòng (double).
* Nếu tình trạng là true thì Ngày nhận và ngày trả phòng là
NULL, nếu tình trạng là false thì ngày nhận và ngày trả phòng
phải xác định (trong đó ngày trả phải có giá trị bằng ngày hiện tại trở lên) Mã đề 5 Lớp Sách:
- Mã số sách (string hoặc char*): gồm 9 ký tự, trong đó ký tự đầu
là tầng nhận giá trị từ 1 → 5, 4 ký tự còn lại nhận giá trị từ 0 → 9;
- Tên sách (string hoặc char*);
- Năm xuất bản (int): giới hạn 4 số - Số quyển (int);
- Tình trạng (bool): true – nếu các quyển sách chưa cho mượn
hết, false – các quyển sách đã cho mượn hết.
*Lưu ý: nếu thêm hoặc xóa đối tượng sách thì tăng, giảm thuộc
tính số quyển, nếu thuộc tính số quyển = 0 mới xóa đối tượng sách đó.