4 TRUỜNG ĐẠI HỌC MỞ HÀ NỘI KHOA CÔNG NGHỆ THÔNG TIN BÁO CÁO BÀI TẬP LỚN KĨ THUẬT LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG ĐỀ TÀI BÀI TOÁN QUẢN LÍ ĐIỂM SINH VIÊN Giáo viên HD Mai Thị Thúy Hà Nhóm 09,sinh viên thực hiện Phan Trung Hiếu Lê Tiến Đạt Lớp 2110A04 4 Hà Nội, năm 2022 NỘI DUNG PHÂN CÔNG VÀ KẾ HOẠCH THỰC HIỆN 3 I XÁC ĐỊNH BÀI TOÁN 4 1 Phát biểu bài toán4 2 Xác định các lớp được cài đặt4 3 Quan hệ và tính kế thừa giữa các lớp 6 II MÔ TẢ THUẬT TOÁN THAO TÁC 6 1 Các chức năng thao tác xử lý nghiệp vụ.
Trang 1TRUỜNG ĐẠI HỌC MỞ HÀ NỘI KHOA CÔNG NGHỆ THÔNG TIN
Giáo viên HD : Mai Thị Thúy Hà
Nhóm 09,sinh viên thực hiện : Phan Trung Hiếu
Lê Tiến Đạt
Lớp : 2110A04
Trang 2
3. Quan hệ và tính kế thừa giữa các lớp:6
II. MÔ TẢ THUẬT TOÁN- THAO TÁC: 6
1. Các chức năng - thao tác xử lý nghiệp vụ chính:6
III.
KIỂM THỬ - LẬP BỘ TEST – ÁP DỤNG 7
1. Phần Code7
2. Phát Test31
Trang 3PHÂN CÔNG VÀ KẾ HOẠCH THỰC HIỆN
HỌ VÀ TÊN CÔNG VIỆC GHI CHÚ
Phan Trung Hiếu Code chức năng, thao tác bài toán HOÀN
THÀNH
THÀNH
Trang 4I XÁC ĐỊNH BÀI TOÁN
1 Phát biểu bài toán
Quản lí điểm sinh viên đại học đáp ứng những nhu cầu cần thiết như : thêm điểm của từng sinh viên vào hệ thống, cũng có thể tự động thống kê điểm tổng cuối kì, sửa điểm khi cần thiết dễ điều chỉnh và theo dõi cũng như nắm bắt tình hình thực tế của sinh viên để biết tình hình học tập của mình, thao tác đơn giản không rườm rà phức tạp Cho phép quản lí mọi nơi thông qua hình thức truy cập Internet giáo viên có thể quản lí điểm của sinh viên Chính vì thế hệ thống quản lí điểm sinh viên đã ra đời để phục vụ những yêu cầu cần thiết cũng như thay đổi hiện đại theo xu hướng.
2 Xác định các lớp được cài đặt
Lớp SinhVien
-Gồm các thuộc tính: hoten ,diachi,tuoi,maSinhVien,lop,khoa.
Các phương thức: hàm khởi tạo, get, set tương ứng, phương thức nhập và hiện/ toString.
Trang 63 Quan hệ giữa các lớp:
II.MÔ TẢ THUẬT TOÁN- THAO TÁC
1 Các chức năng - thao tác xử lý nghiệp vụ chính:
- Nhập đối tượng ()
- Hiện đối tượng ( )
- Thêm đối tượng ()
- Tìm kiếm ()
SinhVien theo maSinhVien
Diem theo maSinhVien
Trang 8public class SinhVien implements IHoatDong, IKhoa,Serializable{
private String hoTen;
private String diaChi;
private int tuoi;
private String maSinhVien;
private String lop;
private String khoa;
Trang 9public String getHoTen() {
Trang 10public String toString() {
return "SinhVien{" + "hoTen=" + hoTen + ", diaChi=" + diaChi + ", tuoi=" + tuoi + ",
maSinhVien=" + maSinhVien + ", lop=" + lop + ", khoa=" + khoa + '}';
}
@Override
public void nhap() {
Scanner sc = new Scanner(System.in);
System.out.println("Nhap ho ten : ");
hoTen = sc.nextLine();
Trang 11System.out.println("Nhap dia chi : ");
Trang 12public class DIEM implements Serializable, IHoatDong{
private String maSinhVien;
private float giaiTich;
Trang 15public float getChuyenCan() {
public String toString() {
return "DIEM{" + "maSinhVien=" + maSinhVien + ", giaiTich=" + giaiTich + ", lthdt=" +
lthdt + ", tiengAnh=" + tiengAnh + ", ktmt=" + ktmt + ", csdl=" + csdl + ", chuyenCan=" +
chuyenCan + '}';
}
@Override
public void nhap() {
Scanner sc = new Scanner(System.in);
System.out.println("Nhap ma sinh vien : ");
Trang 16public class XLDS implements IHoatDong, Serializable{
private SinhVien sinhVien;
private DIEM ds;
public XLDS() {
}
Trang 17public SinhVien getSinhVien() {
System.out.println("Nhap ma sinh vien can tim : ");
maSinhVien = new Scanner(System.in).nextLine();
SinhVien sv = new DSSV().timKiemSV(maSinhVien);
if(sv == null) {
System.out.println("Sinh vien chua ton tai, nhap du lieu vao he thong ");
sv = new SinhVien();
sv.nhap();
Trang 18System.out.println("Nhap ma sinh vien can tim : ");
maSinhVien = new Scanner(System.in).nextLine();
DIEM d = new DSDS().timKiemDs(maSinhVien);
} catch (IOException | ClassNotFoundException ex) {
Logger.getLogger(XLDS.class.getName()).log(Level.SEVERE, null, ex);
}
}
public void hienDS() {
System.out.println("Thong tin sinh vien ");
Trang 20public static final String fname = "SV.DAT";
public void ghiFileSV(SinhVien sv) throws FileNotFoundException, IOException {
File f = new File(fname);
boolean append = f.exists();
FileOutputStream fout = new FileOutputStream(f, append);
AppendObjectOutputStream out = new AppendObjectOutputStream(fout, append);
boolean isCheck = true;
FileInputStream fin = new FileInputStream(fname);
ObjectInputStream in = new ObjectInputStream(fin);
Trang 21public void nhapDSSV() throws IOException {
System.out.println("Nhap so luong sinh vien : ");
int n = new Scanner(System.in).nextInt();
for(int i=0; i<n;i++) {
SinhVien sv = new SinhVien();
Trang 23}
public DSDS(ArrayList<DIEM> lsds) {
this.lsds = lsds;
}
public static final String fname="DIEM.DAT";
public void ghifileDS(DIEM d) throws FileNotFoundException, IOException{
File f = new File(fname);
boolean append = f.exists();
FileOutputStream fout = new FileOutputStream(f, append);
AppendObjectOutputStream out = new AppendObjectOutputStream(fout, append);
boolean isCheck = true;
FileInputStream fin = new FileInputStream(fname);
ObjectInputStream in = new ObjectInputStream(fin);
Trang 24}
in.close();
fin.close();
}
public void nhapDSDS() throws IOException{
System.out.println("Nhap so luong diem thong ke : ");
int n = new Scanner(System.in).nextInt();
for (int i=0;i<n;i++){
DIEM d = new DIEM();
Trang 25public static final String fname="BANGDIEM.DAT";
public void ghiFileDS(XLDS xlds) throws FileNotFoundException, IOException {
Trang 26File f = new File(fname);
boolean append = f.exists();
FileOutputStream fout = new FileOutputStream(f, append);
AppendObjectOutputStream out = new AppendObjectOutputStream(fout, append);
FileInputStream fin = new FileInputStream(fname);
ObjectInputStream in = new ObjectInputStream(fin);
boolean isCheck = true;
Trang 27public interface IHoatDong {
public void nhap();
public interface IKhoa {
public static final String A = "CNTT";
Trang 28public static final String B = "TCNN";
public static final String C = "Luat";
public class QlyDiemSo {
public static void main(String[] args) throws IOException, FileNotFoundException,
ClassNotFoundException {
int chon;
do{
System.out.println("Quan ly diem cua sinh vien ");
System.out.println("1 Nhap thong tin sinh vien va ghi vao file");
System.out.println("2 Nhap thong tin diem va ghi vao file");
System.out.println("3 Nhap bang diem cua 1 sinh vien");
System.out.println("4 Tim kiem 1 sinh vien");
System.out.println("5 Ket thuc ");
System.out.println("Hay chon tu 1-5");
chon = new Scanner(System.in).nextInt();
Trang 29DSdiemso ls = new DSdiemso();
System.out.println("nhap thong tin diem");
System.out.println("Nhap ma sinh vien can tim : ");
maSinhVien = new Scanner(System.in).nextLine();
SinhVien sv = new DSSV().timKiemSV(maSinhVien);
sv.toString();
Trang 31-Thêm sinhVien :
Trang 32-Thêm điểm
- Thêm bảng điểm
Trang 33- Tìm kiếm