Lớp QLCB cần có một mảng chứa các phần tử có kiểu CanBo, nhập thông tin mới cho các cán bộ cụ thể (Nhân Viên, Công Nhân, Kỹ Sư) và đưa vào mảng sau đó tìm kiếm, hiển thị thông tin của c[r]
(1)Danh sách tập JavaCore
Chú ý: Thiết kế chương trình cần thể tính hướng đối tượng cao dựa khía cạnh: - Tính đóng gói
- Tính thừa kế - Tính đa hình
Thực nạp chồng phương thức (overloading), ghi đè phương thức (overriden) cần để tối ưu chương trình
Đề 1:
1 Xây dựng lớp phân số với hai thuộc tính riêng xác định tử số mẫu số phân số xây dựng phương thức:
- Các toán tử tạo lập (constructor) trường hợp khơng có tham số trường hợp có tham số tử số mẫu số
- Các phép toán cộng, trừ, nhân, chia phân số - Phép kiểm tra phân số có phải tối giản hay khơng - Phép tìm dạng tối giản phân số
2 Viết chương trình ứng dụng kiểm tra hoạt động phương thức
Gợi ý: Tử số mẫu số chọn kiểu nguyên Phân số a/b đưa dạng tối giản cách chia tử số mẫu số cho ước chung lớn (a,b) Cần có thêm phương thức tìm ước chung lớn số (sử dụng thuật toán ocolit)
Đề 2:
Một đơn vị sản xuất gồm có cán cơng nhân, kỹ sư, nhân viên
+ Mỗi cán cần quản lý lý thuộc tính: Họ tên, ngày sinh, giới tính, địa + Các cơng nhân cần quản lý: Bậc (công nhân bậc 3/7, bậc 4/7 )
+ Các kỹ sư cần quản lý: Ngành đào tạo
+ Các nhân viên phục vụ cần quản lý thông tin: công việc
1 Xây dựng lớp NhanVien, CongNhan, KySu kế thừa từ lớp CanBo
2 Xây dựng hàm để truy nhập (get), thay đổi (set) hiển thị thông tin thuộc tính lớp Xây dựng lớp QLCB cài đặt phương thức thực chức sau:
- Nhập thông tin cho cán - Tìm kiếm theo họ tên
- Hiển thị thơng tin cán tìm
Gợi ý: Thuộc tính bậc cơng nhân để kiểu String
Xây dựng constructor cho lớp, constructor lớp gọi lại constructor từ lớp cha để tránh việc lặp lại code
Phương thức hiển thị thông tin lớp cần ghi đè phương thức lớp cha (cùng tên phương thức + gọi lại phương thức lớp cha để lấy thông tin chung cán bộ)
(2)Đề 3:
Một thư viện cần quản lý tài liệu bao gồm, Sách, Tạp chí, Báo
+ Mỗi tài liệu có thuộc tính: Mã tài liệu, Tên nhà xuất bản, Số phát hành + Các loại sách cần quản lý: Tên tác giả, số trang
+ Các tạp chí cần quản lý: Số phát hành, tháng phát hành + Các báo cần quản lý: ngày phát hành
1 Xây dựng lớp để quản lý loại tài liệu cho việc sử dụng lại nhiều Xây dựng lớp QuanLySach cài đặt phương thức thực công việc sau:
- Nhập thông tin tài liệu
- Tìm kiếm tài liệu theo loại (sách, báo, tạp chí) theo mã tài liệu - Hiển thị thông tin tài liệu tìm kiếm
Gợi ý: Một số đề làm tương tự đề
Đề 4:
Các thí sinh dự thi đại học bao gồm thí sinh thi khối A, thí sinh thi khối B, thí sinh thi khối C + Các thí sinh cần quản lý thuộc tính: Số báo danh, họ tên, địa chỉ, diện ưu tiên khu vực + Thí sinh thi khối A thi mơn: Tốn, lý, hố
+ Thí sinh thi khối B thi mơn: Tốn, Hố, Sinh + Thí sinh thi khối C thi môn: Văn, Sử, Địa
1 Xây dựng lớp để quản lý thí sinh cho sử dụng lại nhiều Xây dựng lớp TuyenSinh cài đặt phương thức thực nhiệm vụ sau: - Nhập thơng tin thí sinh dự thi
- Hiển thị thơng tin thí sinh - Tìm kiếm theo số báo danh
Đề 5:
Để quản lý hộ dân khu phố, người ta quản lý thông tin sau: - Với hộ dân, có thuộc tính:
+ Số thành viên hộ ( số người)
+ Số nhà hộ dân ( Số nhà gắn cho hộ dân) + Thông tin cá nhân hộ gia đình
- Với cá nhân, người ta quản lý thông tin như: họ tên, ngày sinh, nghề nghiệp Hãy xây dựng lớp Nguoi để quản lý thông tin cá nhân
2 Xây dựng lớp KhuPho để quản lý thơng tin hộ gia đình Viết phương thức nhập, hiển thị thông tin cho cá nhân Cài đặt chương trình thực công việc sau:
- Nhập vào dãy gồm n hộ dân (n - nhập từ bàn phím)
- Hiển thị hình thơng tin hộ khu phố năm có người mừng thượng thọ (80 tuổi)
(3)Đề 6:
Để quản lý khách hàng đến thuê phòng trọ khách sạn, người ta cần quản lý thơng tin sau: - Số ngày trọ, loại phịng trọ, giá phịng, thơng tin cá nhân khách trọ
- Với cá nhân, người ta cần quản lý thông tin : Họ tên, ngày sinh, số chứng minh thư nhân dân Hãy xây dựng lớp Nguoi để quản lý thông tin cá nhân cá nhân
2 Xây dựng lớp KhachSan để quản lý thông tin khách trọ
3 Viết phương thức : nhập, hiển thị, xóa thơng tin khách trọ, Cài đặt chương trình thực cơng việc sau:
- Nhập vào dãy gồm n khách trọ ( n - nhập từ bàn phím)
- Hiển thị hình thơng tin cá nhân trọ khách sạn
- Tính số tiền cần phải trả khách hàng trả phòng trọ (căn vào số CMND để tìm kiếm mảng)
Đề 7:
Để quản lý hồ sơ học sinh trường THPT, người ta cần quản lý thông tin sau: - Các thông tin : lớp, khố học, kỳ học, thơng tin cá nhân học sinh
- Với học sinh, thông tin cá nhân cần quản lý gồm có: Họ tên, ngày sinh, quê quán Hãy xây dựng lớp Nguoi để quản lý thông tin cá nhân học sinh
2 Xây dựng lớp HSHocSinh (hồ sơ học sinh) để lý thông tin học sinh Xây dựng phương thức : nhập, hiển thị thông tin cá nhân Cài đặt chương trình thực công việc sau:
- Nhập vào danh sách gồm n học sinh ( n- nhập từ bàn phím)
- Hiển thị hình tất học sinh sinh năm 1985 quê Thái Nguyên - Hiển thị hình tất học sinh lớp 10A1
Gợi ý: Thuộc tính ngày sinh để kiểu Date bao gồm ngày, tháng, năm
Đề 8:
Khoa CNTT-DHTN cần quản lý việc toán tiền lương cho cán giáo viên khoa Để quản lý được, nhà quản lý cần có thơng tin sau:
- Với cán giáo viên, có thơng tin sau: lương cứng, thướng, phạt, lương thực lĩnh thông tin cá nhân cán giáo viên
- Các thông tin cá nhân cán giáo viên: Họ tên, ngày sinh, quê quán Hãy xây dựng lớp Nguoi để quản lý thông tin cá nhân cán giáo viên Xây dựng lớp CBGV ( cán giáo viên) để quản lý thông tin cán giáo viên Xây dựng phương thức : nhập, hiển thị thông tin cá nhân cán giáo viên Tính lương thực lĩnh cho cán cơng thức tính lương tính sau:
Lương thực lĩnh=Lương cứng + thưởng - phạt
5 In danh sách cán có lương thực lĩnh >= triệu
Đề 9:
Thư viện trường đại học KHTN có nhu cầu cần quản lý việc mượn sách Sinh viên đăng ký tham gia mượn sách thông qua thẻ mượn mà thư viện thiết kế
(4)thơng tin riêng sinh viên
- Các thơng tin riêng sinh viên bao gồm: Họ tên, MSV, ngày sinh, lớp Hãy xây dựng lớp SinhVien để quản lý thông tin riêng sinh viên Xây dựng lớp TheMuon để quản lý việc mượn sách đọc giả
3 Xây dựng phương thức để nhập thị thông tin riêng cho sinh viên In danh sách sinh viên, tên sách mượn cần trả vào ngày cuối tháng
Đề 10:
Để quản lý biên lai thu tiền điện, người ta cần thông tin sau:
- Với biên lai, có thơng tin sau: thơng tin hộ sử dụng điện, số cũ, số mới, số tiền phải trả hộ sử dụng điện
- Các thông tin riêng hộ sử dụng điện gồm: Họ tên chủ hộ, số nhà, mã số công tơ hộ dân sử dụng điện
1 Hãy xây dựng lớp KhachHang để lưu trữ thông tin riêng hộ sử dụng điện Xây dựng lớp BienLai để quản lý việc sử dụng toán tiền điện hộ dân Xây dựng phương thức nhập, hiển thị thông tin riêng mỗI hộ sử dụng điện Cài đặt chương trình thực cơng việc sau:
+ Nhập vào thông tin cho n hộ sử dụng điện + Hiển thị thông tin biên lai nhập
+ Tính tiền điện phải trả cho hộ dân, giả sử tiền phải trả tính theo cơng thức sau: số tiền phải trả=(Số - số cũ) * 750
Đề 11:
Để xử lý văn người ta xây dựng lớp văn có thuộc tính riêng xâu ký tự Hãy: Xây dựng toán tử tạo lập: VanBan(), VanBan(String noidung)
2 Xây dựng phương thức đếm số từ xâu
3 Xây dựng phương thức đếm số ký tự H (không phân biệt chữ thường, chữ hoa) xâu
4 Chuẩn hoá xâu theo tiêu chuẩn (Ở đầu cuối xâu khơng có ký tự trống, xâu khơng có hai ký tự trắng liền nhau)
Gợi ý: Tham chiếu phương thức class String Đề 12:
Xây dựng lớp Ma Trận có thuộc tính riêng sau: - Số dịng, số cột ma trận
- mảng chiều để lưu trữ phần tử ma trận Hãy:
- Hãy xây dựng toán tử tạo lập: MaTran(), MaTran(int n,int m)
- Xây dựng phưong thức nhập vào ma trận thị hình (hiển thị định dạng ma trận) - Xây dựng phương thức tính tổng hiệu tích ma trận
- Cài đặt chương trình: Nhập vào ma trận A,B sau tính tổng: C=A+B hiển thị hình
Đề 13:
(5)+ Các ô tô cần quản lý: số chỗ ngồi, kiểu động + Xe máy cần quản lý: công suất
+ Xe tải cần quản lý: trọng tải
2 Xây dựng lớp XeTai, XeMay, OTo kế thừa từ lớp PTGT
3 Xây dựng hàm để truy nhập (get), thay đổi (set) hiển thị thuộc tính lớp Xây dựng lớp QLPTGT cài đặt phương thức thực chức sau:
- Nhập đăng ký phương tiện
- Tìm phương tiện theo màu năm sản xuất
Đề 14:
1 Hãy xây dựng lớp DaGiac gồm có thuộc tính - Số cạnh đa giác
- Mảng số nguyên chứa kích thước cạnh đa giác Các phương thức:
- Tính chu vi
- In giá trị cạnh đa giác
2 Xây dựng lớp TamGiac kế thừa từ lớp DaGiac, viết đè hàm tính chu vi xây dựng thêm phương thức kiểm tra tính hợp lệ cạnh tam giác, tính diện tích tam giác
3 Xây dựng ứng dụng Java để nhập vào dãy gồm n tam giác in hình cạnh tam giác có diện tích lớn
Gợi ý: cạnh tam giác hợp lệ tổng hai cạnh lớn cạnh cịn lại Diện tích tam giác tính theo công thức heron
Đề 15:
Mỗi điểm mặt phẳng xác đinh hai giá trị hoành độ tung độ
1 Hãy xây dựng lớp Diem với chứa đốI tượng diểm mặt phẳng xây dựng phương thức sau:
- Toán tử tạo lập
- Phương thức in đốI tượng Diem (in hoành độ, tung độ) - Tính khoảng cách hai điểm
5 MỗI tam giác mặt phẳng xác định bởI điểm Hãy xây dựng lớp TamGiac với thuộc tính riêng đối tượng thuộc lớp Diem phương thức:
- Xây dựng toản tử tạo lập: TamGiac();
TamGiac(Diem d1, Diem d2, Diem d3); - Tính diện tích tam giác
- Tính chu vi tam giác
Gợi ý: Khoảng cách điểm A(x1, y1), B(x2,y2) tính theo cơng thức: d= sqrt((x1-x2)^2 + (y1-y2)^2) Đề 16:
Mỗi điểm mặt phẳng xác đinh hai giá trị hoành độ tung độ
1 Hãy xây dựng lớp Diem với chứa đốI tượng diểm mặt phẳng xây dựng phương thức sau:
(6)- Phương thức in đốI tượng thuọc lớp Diem - Tính khoảng cách hai điểm
2 Xây dựng lớp HinhTron chứa đốI tượng hình trịn vớI thuộc tính đốI tượng thuộc lớp Diem để xác định tâm hình trịn giá trị ngun để xác định bán kinh hình trịn cài đặt phương thức:
- Xây dựng toán tử tạo lập: HinhTron(), - HinhTron(Diem d, int bk)
- HinhTron(int bk , Diem d) - Tính chu vi, diện tich hình trịn
Đề 17:
Class Course (khóa học) dùng mảng để quản lý danh sách sinh viên Hãy viết lại class sử dụng ArrayList thay cho mảng
(ArrayList lớp thiết kế sẵn Java cho phép lưu trữ danh sách Tham khảo ví dụ tại: http://www.java2novice.com/java-collections-and-util/arraylist/basic-operations/)
Listing 7.11 Course.java public class Course { private String name;
private String[] students = new String[100] private int numberOfStudents;
5
public Course(String name) { this.name = name;
} 9
10 public void addStudent(String student) { 11 students[numberOfStudents] = student; 12 numberOfStudents++;
13 } 14
15 public String[] getStudents() { 16 return students;
17 } 18
19 public int getNumberOfStudents() { 20 return numberOfStudents;
21 } 22
23 public String getName() { 24 return name;
(7)Đề 18:
Xây dựng lớp hình chữ nhật (HCN) với thuộc tính chiều dài, chiều rộng, phương thức set, get, phương thức tính chu vi, diện tích
Thực ghi đè phương thức equal lớp cha Object để so sánh hình chữ nhật tương đương (2 HCN tương đương HCN có diện tích)
Thiết kế để lớp HCN thực thi giao diện Comparable, thực cài đặt cho phương thức compareTo để so sánh hình chữ nhật dựa vào diện tích chúng
Viết chương trình test phương thức với hình chữ nhật