Hdth02 ltudql02--tuan02 tt-

657 views

Published on

Published in: Education
  • Be the first to comment

  • Be the first to like this

Hdth02 ltudql02--tuan02 tt-

  1. 1. TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM KHOA CÔNG NGHỆ THÔNG TIN BỘ MÔN CÔNG NGHỆ PHẦN MỀM HỆ TẠI CHỨC MÔN: LẬP TRÌNH ỨNG DỤNG QUẢN LÝ 02 GVLT: ThS. BÙI TẤN LỘC HƯỚNG DẪN THỰC HÀNH TUẦN 02 LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG (TT)Người soạn: Nguyễn Đức Huy Ngô Ngọc Đăng Khoa Nguyễn Lê Nguyên Ngữ Hồ Tuấn Thanh TP.HCM, ngày 13 tháng 03 năm 2011
  2. 2. htthanh@fit.hcmus.edu.vn MỤC LỤC1 Mục tiêu ....................................................................................................................... 32 Hướng dẫn ................................................................................................................... 3 2.1 Đề bài ..................................................................................................................... 3 2.2 Phân tích ................................................................................................................. 3 2.3 Cài đặt .................................................................................................................... 43 Bài tập ........................................................................................................................ 16 3.1 Quản lý nhân viên ................................................................................................ 16 3.2 Quản lý thư viện ................................................................................................... 16 3.3 Quản lý sinh viên ................................................................................................. 17 Trang 2
  3. 3. htthanh@fit.hcmus.edu.vn1 Mục tiêu - Ôn lại tính chất kế thừa và đa xạ trong phương pháp lập trình hướng đối tượng, cài đặt bằng ngôn ngữ VB.NET.2 Hướng dẫn2.1 Đề bàiNgân hàng X mở dịch vụ cho khách hàng lập sổ tiết kiệm. Thông tin sổ mà ngân hàngcần ghi nhận gồm CMND, họ tên khách hàng, số tiền gửi (triệu đồng), ngày lập sổ và lãisuất (%).Có 2 loại sổ tiết kiệm là sổ có kỳ hạn và sổ không có kỳ hạn. Đối với sổ có kỳ hạn, cầnlưu lại thông tin kỳ hạn (gửi bao nhiêu tháng).Khách hàng của bạn là ngân hàng X, yêu cầu bạn viết chương trình thực hiện các chứcnăng sau: 1. Nhập danh sách các sổ tiết kiệm. 2. Xuất danh sách các số tiết kiệm ra màn hình. 3. Tính số tiền lãi phải trả. Người dùng sẽ nhập vào số tháng n. Chương trình sẽ tính tổng số tiền lãi phải trả. Biết: Đối với sổ không có kỳ hạn: Tiền lãi = Tiền gửi * Lãi suất * n. Đối với sổ có kỳ hạn: o Tiền lãi = Tiền gửi * Lãi suất * n, nếu n lớn hơn bằng kỳ hạn. o Ngược lại, tiền lãi của sổ đó bằng 0.Bạn hãy giải quyết bài toán trên theo phong cách lập trình hướng đối tượng với ngôn ngữVB.NET.2.2 Phân tích - Trong bài này ta có thể xác định được các lớp sau: o Sổ tiết kiệm: với các thuộc tính chung: CMND, họ tên khách hàng, số tiền gửi (triệu đồng), ngày lập sổ và lãi suất (%). o Sổ không có kỳ hạn: kế thừa lớp sổ tiết kiệm. o Sổ có kỳ hạn: kế thừa lớp sổ tiết kiệm. Ngoài ra, nó còn có thêm một thuộc tính mới là kỳ hạn. o Ngân hàng: chứa danh sách (List Of) các sổ tiết kiệm. - Để làm chức năng 1, ta thấy: Trang 3
  4. 4. htthanh@fit.hcmus.edu.vn o Trong lớp Ngân hàng cần có 1 hàm để nhập vào danh sách sổ tiết kiệm. Hàm này sẽ thực hiện những thao tác sau:  Nhập số lượng số (có và cả không có kỳ hạn).  Thực hiện lặp với số lượng sổ:  Yêu cầu nhập loại sổ  Tạo ra (new) loại sổ tương ứng.  Nhập thông tin cho sổ đó  Thêm sổ đó vào danh sách sổ đang quản lý. o Như vậy, trong lớp sổ tiết kiệm cần có thêm một hàm Nhập thông tin một sổ. o Do sổ tiết kiệm có kỳ hạn có thêm thông tin riêng, nên trong lớp này cần viết lại (Override) làm Nhập thông tin này từ lớp cha. o Lớp sổ tiết kiệm ko kỳ hạn không cần viết lại. - Tương tự, để làm chức năng 2, ta thấy: o Trong lớp Ngân hàng, cần có hàm để xuất thông tin các sổ tiết kiệm. Hàm sẽ thực hiện các thao tác sau:  Duyệt qua từng sổ trong danh sách:  Xuất thông tin của sổ đang duyệt. o Như vậy, trong lớp sổ tiết kiệm cần có thêm một hàm Xuất thông tin một sổ. o Khi xuất, ta cần xuất luôn loại sổ, nên lớp sổ tiết kiệm có kỳ hạn cần override lại hàm Xuất từ lớp cha để xuất loại và thông tin kỳ hạn. o Tương tự lí luận này, sổ tiết kiệm không kỳ hạn cũng cần override lại. - Để làm chức năng 3, ta thấy: o Trong lớp Ngân hàng, cần có thêm hàm tính tổng tiền lãi với tham số n(tháng) truyền vào. Hàm sẽ thực hiện các thao tác sau:  Duyệt qua các sổ trong danh sách.  Tính lãi của từng sổ.  Cộng lãi tính được vào tổng lãi. o Như vậy trong lớp sổ tiết kiệm cần có làm Tính lãi cho một số. o Do cách tính lãi của 2 loại sổ khác nhau, nên trong 2 lớp sổ tiết kiệm có kỳ hạn và sổ tiết kiệm không kỳ hạn cần override lại hàm này.2.3 Cài đặt - Khai báo lớp SoTietKiem: Trang 4
  5. 5. htthanh@fit.hcmus.edu.vn Trang 5
  6. 6. htthanh@fit.hcmus.edu.vn - Khai báo lớp SoCoKyHan: o Lưu ý từ khóa kế thừa (Inherits). Trang 6
  7. 7. htthanh@fit.hcmus.edu.vn Trang 7
  8. 8. htthanh@fit.hcmus.edu.vn - Khai báo lớp SoKoKyHan: Trang 8
  9. 9. htthanh@fit.hcmus.edu.vn Trang 9
  10. 10. htthanh@fit.hcmus.edu.vn - Khai báo lớp NganHang: Trang 10
  11. 11. htthanh@fit.hcmus.edu.vn Trang 11
  12. 12. htthanh@fit.hcmus.edu.vn - Thực hiện chức năng 1: o Lớp NganHang (file NganHang.vb): Trang 12
  13. 13. htthanh@fit.hcmus.edu.vn o Lớp SoTietKiem (file SoTietKiem.vb):  Lưu ý từ khóa Overridable. Trang 13
  14. 14. htthanh@fit.hcmus.edu.vn o Lớp SoCoKyHan (file SoCoKyHan.vb):  Lưu ý từ khóa Overrides. - Thực hiện chức năng 2: o Lớp NganHang (file NganHang.vb): o Lớp SoTietKiem (file SoTietKiem.vb): Trang 14
  15. 15. htthanh@fit.hcmus.edu.vn o Lớp SoCoKyHan (file SoCoKyHan.vb): o Lớp SoKoKyHan (file SoKoKyHan.vb): - Thực hiện chức năng 3: o Lớp NganHang (file NganHang.vb): o Lớp SoTietKiem (file SoTietKiem.vb): Trang 15
  16. 16. htthanh@fit.hcmus.edu.vn o Lớp SoCoKyHan (file SoCoKyHan.vb): o Lớp SoKoKyHan (file SoKoKyHan.vb):3 Bài tập3.1 Quản lý nhân viênCông ty ABC có nhiều nhân viên làm việc trong các bộ phận khác nhau: quản lý, sảnxuất, văn phòng. - Lương nhân viên văn phòng: o Lương cơ bản + số ngày làm việc * 100k + trợ cấp - Lương nhân viên sản xuất: o Lương cơ bản + số sản phẩm*2000 - Lương nhân viên quản lý: o Lương cơ bản + hệ số công việc + thưởngNgoài ra công ty còng có các thông tin về nhân viên: họ tên, và các thông số trên để tínhlương cho nhân viên trong công ty.Viết chương trình: 1. Nhập vào danh sách nhân viên. 2. Xuất danh sách nhân viên ra màn hình. 3. Tính tổng lương phải trả trong một tháng.3.2 Quản lý thư việnThư viện X tiến hành cho đăng ký làm thẻ độc giả. Thông tin độc giả gồm họ tên, ngàylập thẻ, số tháng có hiệu lực của thẻ. Trang 16
  17. 17. htthanh@fit.hcmus.edu.vnCó hai loại độc giả: trẻ em và người lớn. - Độc giả trẻ em cần lưu thêm thông tin họ tên người đại diện. - Độc giả người lớn cần lưu thêm thông tin số CMND.Viết chương trình: 1. Nhập danh sách độc giả. 2. Xuất danh sách ra màn hình. 3. Tính tổng tiền làm thẻ mà thư viện thu được. Biết - Độc giả trẻ em: o Tiền làm thẻ = 20.000 đ. - Độc giả người lớn: o Tiền làm thẻ = số tháng hiệu lực * 10.000 đ.3.3 Quản lý sinh viênTrường X có 2 loại sinh viên chính qui và tiên tiến. Thông tin sinh viên gồm: MSSV, Họtên, Ngày sinh, ĐTB. Sinh viên tiên tiến cần có thêm thông tin điểm TOEFL iBT.Viết chương trình: 1. Nhập vào danh sách sinh viên. 2. Xuất danh sách sinh viên ra màn hình. 3. Xuất ra màn hình danh sách sinh viên đủ điều kiện tốt nghiệp. Biết: - Sinh viên chính qui: o Điều kiện tốt nghiệp: ĐTB >= 5. - Sinh viên tiên tiến: o Điều kiện tốt nghiệp: ĐTB >= 6.5 và điểm TOEFL iBT >=80. Trang 17

×