Java Basic- OOP - Tổng hợp - Quản lý sinh viên - giáo viên bằng java
Câu 1:
Tạo lớp Person chứa thông tin
- Tên
- Giới tính
- Ngày sinh
- Địa chỉ
Với đầy đủ hàm get set, constructor không tham số, constructor đầy đủ tham số
1. Viết phương thức inputInfo(), nhập thông tin Person từ bàn phím
2. Viết phương thức showInfo(), hiển thị tất cả thông tin Person
Câu 2:
Tạo lớp Student thừa kế Person, lưu trữ các thông tin một sinh viên
- Mã sinh viên: chứa 8 kí tự
- Điểm trung bình: từ 0.0 – 10.0
- Email: phải chứa kí tự @ và không tồn tại khoảng trắng
1. Override phương thức inputInfo(), nhập thông tin Student từ bàn phím
2. Override phương thức showInfo(), hiển thị tất cả thông tin Student
3. Viết phương thức xét xem Student có được học bổng không? Điểm trung bình trên 8.0 là được học bổng
Câu 3:
Tạo lớp StudentTest, chứa Main kiểm tra chức năng lớp Student
Tạo Menu chọn như sau
a. Chọn 1: Nhập vào n sinh viên (n là số lượng sinh viên, được nhập từ bàn phím)
b. Chọn 2: Hiển thị thông tin tất cả các sinh viên ra màn hình
c. Chọn 3: Hiển thị sinh viên có điểm trung bình cao nhất và sinh viên có điểm trung bình thấp nhất
d. Chọn 4: Tìm kiếm sinh viên theo mã sinh viên. Nhập vào mã sinh viên. Nếu tồn tại sinh viên
có mã đó thì in ra màn hình thông tin sinh viên. Nếu không tồn tại thì in ra: Không có sinh
viên nào có mã là <giá trị của mã sinh viên>
e. Chọn 5: Hiển thị tất cả các sinh viên theo thứ tự tên trong bảng chữ cái (A->Z)
f. Chọn 6: Hiển thị tất cả các sinh viên được học bổng, và sắp xếp theo thứ tự điểm cao xuống thấp
g. Chọn 7: Thoát
Câu 4:
Tạo lớp Teacher, kế thừa từ Person, lưu trữ thông tin một giảng viên
- Lớp dạy: Lưu lớp mà giảng viên dạy giống như aptech (ví dụ C1011L, C0903H, C1010KV…)
- Lương một giờ dạy
- Số giờ dạy trong tháng
1. Override phương thức inputInfo(), nhập thông tin Teacher từ bàn phím
2. Override phương thức showInfo(), hiển thị tất cả thông tin Teacher
3. Viết phương thức tính lương thực nhận, trả về lương thực nhận theo công thức:
Nếu lớp dạy là lớp buổi sáng và chiều (Giờ G, H, I, K) thì
Lương thực nhận = lương một giờ dạy * số giờ dạy trong tháng;
Nếu lớp dạy là lớp buổi tối (Giờ L, giờ M) thì
Lương thực nhân = lương một giờ dạy * số giờ dạy trong tháng + 200000đ;
Câu 5:
Tạo lớp TeacherTest, chứa hàm Main kiểm tra chức năng của Teacher
Tạo menu lựa chọn như sau:
a. Chọn 1: Nhập vào n giảng viên (n là số lượng sinh viên, được nhập từ bàn phím)
b. Chọn 2: Hiển thị thông tin tất cả các giảng viên ra màn hình
c. Chọn 3: Hiển thị giảng viên có lương cao nhất
d. Chọn 4: Thoát
Tags:
Phản hồi từ học viên
5
(Dựa trên đánh giá ngày hôm nay)
![Vũ Việt Đức [C1907L]](https://www.gravatar.com/avatar/114894070fbd15fc0c29ffdeab37f4b5.jpg?s=80&d=mm&r=g)
Vũ Việt Đức
2020-03-19 05:54:01
package aptech;
import java.util.Scanner;
public class Student extends Person {
private String maSinhVien, email;
private float diemTrungBinh;
public String getMaSinhVien() {
return maSinhVien;
}
public void setMaSinhVien(String maSinhVien) {
if(maSinhVien.length() != 8){
System.out.println("Mã sinh viên chứa 8 ký tự.");
}
else{
this.maSinhVien = maSinhVien;
}
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
if(email.indexOf("@") == -1){
System.out.println("Email phải có kí tự @.");
}else{
int count = 0;
for(int i = 0; i < email.length(); i++){
char kyTu = email.charAt(i);
if(Character.isSpace(kyTu)){
count++;
}
}
if(count > 0){
System.out.println("Email không được chứa khoảng trắng.");
}else{
this.email = email;
}
}
}
public float getDiemTrungBinh() {
return diemTrungBinh;
}
public void setDiemTrungBinh(float diemTrungBinh) {
if(diemTrungBinh < 0 || diemTrungBinh > 10){
System.out.println("Điểm trung bình từ 0.0 - 10.0");
}else{
this.diemTrungBinh = diemTrungBinh;
}
}
public Student() {
}
public Student(String maSinhVien, String email, float diemTrungBinh, String ten, String gioiTinh, String ngaySinh, String diaChi) {
super(ten, gioiTinh, ngaySinh, diaChi);
this.maSinhVien = maSinhVien;
this.email = email;
this.diemTrungBinh = diemTrungBinh;
}
@Override
public void inputInfo() {
Scanner input = new Scanner(System.in);
super.inputInfo();
System.out.print("Mã sinh viên: ");
maSinhVien = input.nextLine();
System.out.print("Email: ");
email = input.nextLine();
System.out.print("Điểm trung bình: ");
diemTrungBinh = Float.parseFloat(input.nextLine());
}
@Override
public void showInfo() {
super.showInfo();
System.out.println("- Mã sinh viên: " + maSinhVien + "\n- Điểm trung bình: " + diemTrungBinh + "\n- Email: " + email);
}
public boolean hocBong(){
if(diemTrungBinh >= 8){
return true;
}
else{
return false;
}
}
}
![Vũ Việt Đức [C1907L]](https://www.gravatar.com/avatar/114894070fbd15fc0c29ffdeab37f4b5.jpg?s=80&d=mm&r=g)
Vũ Việt Đức
2020-03-19 05:53:24
package aptech;
import java.util.Scanner;
public class Person {
String ten, gioiTinh, ngaySinh, diaChi;
public String getTen() {
return ten;
}
public void setTen(String ten) {
this.ten = ten;
}
public String getGioiTinh() {
return gioiTinh;
}
public void setGioiTinh(String gioiTinh) {
this.gioiTinh = gioiTinh;
}
public String getNgaySinh() {
return ngaySinh;
}
public void setNgaySinh(String ngaySinh) {
this.ngaySinh = ngaySinh;
}
public String getDiaChi() {
return diaChi;
}
public void setDiaChi(String diaChi) {
this.diaChi = diaChi;
}
public Person() {
}
public Person(String ten, String gioiTinh, String ngaySinh, String diaChi) {
this.ten = ten;
this.gioiTinh = gioiTinh;
this.ngaySinh = ngaySinh;
this.diaChi = diaChi;
}
public void inputInfo(){
Scanner input = new Scanner(System.in);
System.out.println("Vui lòng nhập: ");
System.out.print("Tên: ");
ten = input.nextLine();
System.out.print("Ngày sinh: ");
ngaySinh = input.nextLine();
System.out.print("Giới tính: ");
gioiTinh = input.nextLine();
System.out.print("Địa chỉ: ");
diaChi = input.nextLine();
}
public void showInfo(){
System.out.println("Thông tin sinh viên: \n- Tên: " + ten + "\n- Giới tính: " + gioiTinh + "\n- Ngày sinh: " + ngaySinh + "\n- Địa chỉ: " + diaChi);
}
}