Bạn có muốn phản ứng với tin nhắn này? Vui lòng đăng ký diễn đàn trong một vài cú nhấp chuột hoặc đăng nhập để tiếp tục.



 
Trang ChínhTrang Chính  Xem ĐiểmXem Điểm  Tin Học 4aTin Học 4a  Thời Khóa Biểu  Latest imagesLatest images  Đăng kýĐăng ký  Đăng NhậpĐăng Nhập  
nghỉ 7-10-2012 và 8-10-2012
Top posters
tranloc101
Quản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo) Vote_lcapQuản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo) I_voting_barQuản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo) Vote_rcap 
votuanthanh
Quản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo) Vote_lcapQuản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo) I_voting_barQuản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo) Vote_rcap 
DuongLam
Quản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo) Vote_lcapQuản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo) I_voting_barQuản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo) Vote_rcap 
vutran
Quản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo) Vote_lcapQuản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo) I_voting_barQuản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo) Vote_rcap 
nguyenanhtu
Quản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo) Vote_lcapQuản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo) I_voting_barQuản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo) Vote_rcap 
Nguyen Loi
Quản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo) Vote_lcapQuản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo) I_voting_barQuản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo) Vote_rcap 
nguyenloc1688
Quản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo) Vote_lcapQuản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo) I_voting_barQuản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo) Vote_rcap 
ndt
Quản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo) Vote_lcapQuản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo) I_voting_barQuản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo) Vote_rcap 
vandung
Quản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo) Vote_lcapQuản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo) I_voting_barQuản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo) Vote_rcap 
NguoiXua
Quản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo) Vote_lcapQuản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo) I_voting_barQuản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo) Vote_rcap 
Bài gửiNgười gửiThời gian
Hỏi vẩn vơ tranloc101 Tue Oct 28, 2014 6:11 pm
Tài liệu BVHTMT 21/4/2014 đến 13/7/2014 Lớp thầy Lê Nhật Duy DuongLam Sun Apr 27, 2014 10:19 pm
Giải đề thi Ngày Tháng Năm 90_ngotoi_90 Sun Mar 09, 2014 11:57 am
Bùa môn HỆ PHÂN TÁN hy vọng giúp 1 chút gì đó cho các bạn nguyengiang Fri Mar 07, 2014 11:57 pm
Da Co Lop LT Da Phuong Tien Huong Du Lieu trinhmanhcuong Fri Feb 28, 2014 9:19 am
THÔNG BÁO ĐĂNG KÝ MỞ LỚP KIẾN TRÚC & CÀI ĐẶT DBMS_HỌC LẠI trinhmanhcuong Thu Feb 20, 2014 12:10 am
Xin số điện thoại thầy Đặng Thanh Minh môn client-sẻver lecongdang Sat Feb 08, 2014 4:14 pm
Dotnet môn thầy Hai vovanhien2006 Fri Dec 13, 2013 10:39 am
Tuần 345 (.Net) vovanhien2006 Tue Dec 10, 2013 11:55 am
Danh Sách đã nộp LAB REPORT và SOURCE vovanhien2006 Tue Dec 10, 2013 11:32 am
CẦN LỚP MÌNH 1 SỰ TRỢ GIÚP :) nua_vang_trang970 Mon Nov 11, 2013 11:42 pm

Share | 
 

 Quản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo)

Xem chủ đề cũ hơn Xem chủ đề mới hơn Go down 
Tác giảThông điệp
TháiCK
Chủ Nô
Chủ Nô


Tổng số bài gửi : 7
Points : 47984
Join date : 11/03/2011

Quản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo) Empty
Bài gửiTiêu đề: Quản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo)   Quản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo) I_icon_minitimeTue Mar 22, 2011 11:27 am

Lang thang trên mạng thấy cái code này hay Arrow
nên đưa lên cho mọi người tham khảo ,có thể áp dụng vào làm đề tài của thầy geek
Code:

Thông tin về thí sinh gồm: Mã thí sinh, Họ tên, Ngày sinh, điểm môn 1, điểm môn 2, điểm môn 3 và Tổng điểm.
Viết chương trình thực hiện các chức năng sau:
1.Nhập thêm thí sinh
Nhập thông tin về thí sinh (không nhập tổng điểm).
Có kiểm tra mã thí sinh khi nhập (không có hai thí sinh mã trùng nhau)
2.Sắp xếp thí sinh
Lựa chọn chức năng hiển thị danh sách thí sinh đã sắp xếp theo
a)Mã thí sinh
b)Tổng điểm
Sắp xếp danh sách thí sinh
Hiển thị kết quả lên màn hình (chỉ hiển thị mã, tên và tổng điểm).

Đầy là code tham khảo của mình
Bài này mình sử dụng 3 class : CacHamChung, ChucNang, ThiSinh
Class CacHamChung

package QuanLyTuyenSinh;



import java.io.*;

import java.util.StringTokenizer;


public class CacHamChung {

    public static boolean check= true; //Chú ý biến static

    //Ham doi cho

    public static void doiCho(ThiSinh a, ThiSinh b){ //phương thức hoán vị

        ThiSinh temp;

        temp= a;

        a= b;

        b= temp;

    }

    //Ham cat ten

    public static String catTen(String hoTen){

        String ten= "";

        String s= hoTen.toLowerCase();

        StringTokenizer strToken= new StringTokenizer(s," ");

        while(strToken.hasMoreTokens()){

            ten= strToken.nextToken();

        }

        return ten;

    }

    //Ham chuyen ve chu thuong

    public static String chuyenChuThuong(String s){

        return(s.toLowerCase());

    }

    //Ham nhap vao 1 so nguyen

    public static int nhapInt(){

        int n= 0;

        do{

            try{

                check= true;

                BufferedReader input= new BufferedReader(new InputStreamReader(System.in));

                System.out.print("");

                n= Integer.parseInt(input.readLine());

            }catch(Exception e){

                System.out.println("Xuat hien loi: "+e.getMessage());

                check= false;

            }

        }while(!check);

        return n;

    }

    //Ham nhap vao 1 so thuc

    public static float nhapFloat(){

        float n= 0;

        do{

            check= true;

        try{

            BufferedReader input= new BufferedReader(new InputStreamReader(System.in));

            System.out.print("");

            n= Float.parseFloat(input.readLine());

        }catch(Exception e){

            System.out.println("Xuat hien loi: "+e.getMessage());

            check= false;

        }

        }while(!check);

        return n;

    }

    //Ham nhap vao 1 string

    public static String nhapString(){

        String str="";

        try{

            BufferedReader input= new BufferedReader(new InputStreamReader(System.in));

            System.out.print("");

            str= input.readLine();

        }catch(IOException e){

            System.out.println("Xuat hien loi: "+e.getMessage());

        }return (str);

    }

}
Class ChucNang

package QuanLyTuyenSinh;

import java.io.*;


public class ChucNang {

    ThiSinh ts= new ThiSinh();

    ThiSinh[] list= new ThiSinh[50];

    public void ghiFile(ThiSinh t) {

        try{

            FileOutputStream fis= new FileOutputStream("QuanLyTuyenSinh.dat",true);

            PrintWriter pw= new PrintWriter(fis);

            pw.println(t.getMaTS());

            pw.println(t.getTenTS());

            pw.println(t.getNgaySinh());

            pw.println(t.getDiem1());

            pw.println(t.getDiem2());

            pw.println(t.getDiem3());

            pw.println(t.getTongDiem());

            pw.close();

            fis.close();

        }catch(IOException io){

            System.out.println("Xuat hien loi: "+io.getMessage());

        }

        finally{

            System.out.println("Ghi file thanh cong!");

        }

    }

    public void docFile(){

        try{

        int count= 1;

        FileReader fr= new FileReader("QuanLyTuyenSinh.dat");

        BufferedReader buffer= new BufferedReader(fr);

        buffer.readLine();

        while(buffer.readLine()!= null){

            count++;

        }

        ts.setSL(count/7);

        buffer.close();

        fr.close();

        FileReader fr2= new FileReader("QuanLyTuyenSinh.dat");

        BufferedReader input= new BufferedReader(fr2);

        for(int i=1 ; i<=ts.getSL(); i++){

            list[i]= new ThiSinh();

            list[i].setMaTS(Integer.parseInt(input.readLine()));

            list[i].setTenTS(input.readLine());

            list[i].setNgaySinh(input.readLine());

            list[i].setDiem1(Float.parseFloat(input.readLine()));

            list[i].setDiem2(Float.parseFloat(input.readLine()));

            list[i].setDiem3(Float.parseFloat(input.readLine()));

            list[i].setTongDiem(Float.parseFloat(input.readLine()));           

        }

        }catch(FileNotFoundException fe){

            System.out.println("Xuat hien loi: "+fe.getMessage());

        }catch(IOException io){

            System.out.println("Xuat hien loi: "+io.getMessage());

        }       

    }

    public void nhap(){

            int i= ts.getSL()+1;

            list[i]= new ThiSinh();

            boolean check= true;

            do{

                check= true;

                System.out.println("Nhap ma thi sinh: ");

                list[i].setMaTS(CacHamChung.nhapInt());

                for(int j=1 ; j<=ts.getSL() ; j++){

                    if(list[i].getMaTS()== list[j].getMaTS()){

                        check= false;

                        System.out.println("Ma sinh vien da ton tai !");

                    }

                }

            }while(!check);

       

        System.out.println("Nhap ten thi sinh: ");

        list[i].setTenTS(CacHamChung.nhapString());

        System.out.println("Nhap ngay sinh thi sinh (dd-mm-yy): ");

        list[i].setNgaySinh(CacHamChung.nhapString());

        System.out.println("Nhap diem mon thu 1: ");

        list[i].setDiem1(CacHamChung.nhapFloat());

        System.out.println("Nhap diem mon thu 2: ");

        list[i].setDiem2(CacHamChung.nhapFloat());

        System.out.println("Nhap diem mon thu 3: ");

        list[i].setDiem3(CacHamChung.nhapFloat());

        list[i].setTongDiem(list[i].getDiem1(), list[i].getDiem2() , list[i].getDiem3());

        ghiFile(list[i]);

    }

    public void hienThi(ThiSinh t){

        System.out.println("");

        System.out.println("Ma thi sinh      : "+t.getMaTS());

        System.out.println("Ten thi sinh      : "+t.getTenTS());

        System.out.println("Ngay sinh thi sinh: "+t.getNgaySinh());

        System.out.println("Diem mon 1        : "+t.getDiem1());

        System.out.println("Diem mon 2        : "+t.getDiem2());

        System.out.println("Diem mon 3        : "+t.getDiem3());

        System.out.println("Tong diem        : "+t.getTongDiem());

    }



    //Ham sap xep theo ma thi sinh

    public void sapXepTheoMaTS(){

        ThiSinh temp= new ThiSinh();

        for(int i=1 ; i<=ts.getSL() ; i++){

            for(int j=1 ; j<i ; j++){

                if(list[i].getMaTS()<list[j].getMaTS()){

                    temp= list[i];

                    list[i]= list[j];

                    list[j]= temp;

                }

            }

        }

        for(int i=1 ; i<=ts.getSL() ; i++){

            hienThi(list[i]);

        }

    }

    //Ham sap xep theo tong diem

    public void sapXepTheoTongDiem(){

        ThiSinh temp= new ThiSinh();

        for(int i=1 ; i<=ts.getSL() ; i++){

            for(int j=1 ; j<i ; j++){

                if(list[i].getTongDiem()<list[j].getTongDiem()){

                    temp= list[i];

                    list[i]= list[j];

                    list[j]= temp;                   

                }

            }

        }

        for(int i=1 ; i<=ts.getSL() ; i++){

            hienThi(list[i]);

        }

    }

    //Ham sap xep theo danh sach thi sinh

    public void sapXepTheoDanhSach(){

        ThiSinh temp= new ThiSinh();

        for(int i=1 ; i<=ts.getSL() ; i++){

            for(int j=1 ; j<i ; j++){

                if(CacHamChung.catTen(list[i].getTenTS()).compareTo(CacHamChung.catTen(list[j].getTenTS())) <0){

                    temp= list[i];

                    list[i]= list[j];

                    list[j]= temp;

                }

            }

        }

        for(int i=1 ; i<=ts.getSL() ; i++){

            hienThi(list[i]);

        }

    }

    //Ham tim kiem theo ten

    public void timKiemTheoTen(){

        String tenTK;

        int count= 0;

            System.out.println("Nhap ten ban muon tim kiem: ");

            tenTK= CacHamChung.nhapString();

            for(int i=1 ; i<=ts.getSL() ; i++){

                if(tenTK.equals(CacHamChung.catTen(list[i].getTenTS()))){

                    System.out.println("Cac thi sinh co "+tenTK+" la: ");

                    hienThi(list[i]);

                    count++;

                }

            }

            System.out.println("Co "+count+" ket qua phu hop");

    }

    //Ham tim kiem theo tong diem

    public void timKiemTheoTongDiem(){

        int td, count= 0;

        System.out.println("Nhap tong diem muon tim kiem: ");

        td= CacHamChung.nhapInt();

        System.out.println("Cac thi sinh co tong diem tren "+td+" la: ");

        for(int i=1 ; i<=ts.getSL() ; i++){

            if(list[i].getTongDiem() >= td){

                hienThi(list[i]);

                count++;

            }

        }

        System.out.println("Co "+count+" ket qua phu hop");

    }

    public void lietKeDanhSach(){

        for(int i=1 ; i<=ts.getSL() ; i++){

            hienThi(list[i]);

        }

    }

}
Class ThiSinh
package QuanLyTuyenSinh;

import java.util.Scanner;



public class ThiSinh {



    /**

    * @param args

    */

    private int maTS;

    private String tenTS;

    private String ngaySinh;

    private float diem1;

    private float diem2;

    private float diem3;

    private float tongDiem;

    private int sl= 0;

    public ThiSinh[] list;

   

    public void setMaTS(int maTS){

        this.maTS= maTS;

    }

    public int getMaTS(){

        return maTS;

    }

    public void setTenTS(String tenTS){

        this.tenTS= tenTS;

    }

    public String getTenTS(){

        return tenTS;

    }

    public void setNgaySinh(String ngaySinh){

        this.ngaySinh= ngaySinh;

    }

    public String getNgaySinh(){

        return ngaySinh;

    }

    public void setDiem1(float diem1){

        this.diem1= diem1;

    }

    public float getDiem1(){

        return diem1;

    }

    public void setDiem2(float diem2){

        this.diem2= diem2;

    }

    public float getDiem2(){

        return diem2;

    }

    public void setDiem3(float diem3){

        this.diem3= diem3;

    }

    public float getDiem3(){

        return diem3;

    }

    public void setTongDiem(float getDiem1, float getDiem2, float getDiem3){

        this.tongDiem= getDiem1+ getDiem2+ getDiem3;

    }

    public void setTongDiem(float tongDiem){

        this.tongDiem= tongDiem;

    }

    public float getTongDiem(){

        return tongDiem;

    }

    public void setSL(int sl){

        this.sl= sl;

    }

    public int getSL(){

        return sl;

    }

    public ThiSinh(){

    }

    public static void menu(){

        System.out.println("");

        System.out.println("**************** Quan ly tuyen sinh ****************");

        System.out.println("1. Nhap thi sinh");

        System.out.println("2. Sap xep theo ma thi sinh");

        System.out.println("3. Sap xep theo tong diem thi sinh");

        System.out.println("4. Sap xep theo danh sach thi sinh");

        System.out.println("5. Tim kiem theo ten");

        System.out.println("6. Tim kiem theo tong diem");

        System.out.println("7. Liet ke danh sach thi sinh");

        System.out.println("8. Thoat !");

    }

    public static void main(String[] args) throws Exception{

        // TODO Auto-generated method stub

        Scanner input= new Scanner(System.in);

        ChucNang cn= new ChucNang();

        ThiSinh t= new ThiSinh();

        while(true){

            menu();

            cn.docFile();

            System.out.println("so luong= "+t.getSL());

            int choice= input.nextInt();

            System.out.println("");

           

            if(choice== 8){

                System.out.println("....Thoat khoi chuong trinh....");

                System.exit(0);

            }

            switch(choice){

            case 1:

                cn.nhap();

                break;

            case 2:

                System.out.println("2. Sap xep theo ma thi sinh(tang dan)");

                cn.sapXepTheoMaTS();

                Thread.sleep(5000);

                break;

            case 3:

                System.out.println("3. Sap xep theo tong diem thi sinh (tang dan)");

                cn.sapXepTheoTongDiem();

                Thread.sleep(5000);

                break;

            case 4:

                System.out.println("4. Sap xep theo danh sach thi sinh");

                cn.sapXepTheoDanhSach();

                Thread.sleep(5000);

                break;

            case 5:

                System.out.println("5. Tim kiem theo ten");

                cn.timKiemTheoTen();

                Thread.sleep(5000);

                break;

            case 6:

                System.out.println("6. Tim kiem theo tong diem");

                cn.timKiemTheoTongDiem();

                Thread.sleep(5000);

                break;

            case 7:

                System.out.println("8. Liet ke danh sach thi sinh");

                cn.lietKeDanhSach();

                Thread.sleep(5000);

                break;

            }

        }

    }

}
Với bài quản lý trên thì với mỗi thuộc tính của sinh viên ta sử dụng 1 hàm để set giá trị cho nó và sử dụng contrutors mặc định để khời tạo 1 đối tượng ThiSinh. Tuy nhiên ta có thể làm các khác là set giá trị cho các thuộc tính ngay trong contructor -> ko cần sử dụng nhiều hàm
Đây là ví dụ về contructor trong bài quản lý sách
public Sach(int maSach, String tenSach, String tacGia, String NXB, String chuyenNganh, int soTrang){

        this.maSach= maSach;

        this.tenSach= tenSach;

        this.tacGia= tacGia;

        this.NXB= NXB;

        this.chuyenNganh= chuyenNganh;

        this.soTrang= soTrang;

    }

farao
Mình cũng chưa test nên không biết có lỗi không , mọi người về test thử nha queen
Về Đầu Trang Go down
votuanthanh
Administrator
Administrator
votuanthanh

Nam
Tổng số bài gửi : 251
Points : 50426
Join date : 13/01/2011
Age : 34
Đến từ : TP HCM

Quản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo) Empty
Bài gửiTiêu đề: Re: Quản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo)   Quản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo) I_icon_minitimeTue Mar 22, 2011 11:33 am

sunny sao ko để code riêng đề riêng cho dễ nhìn sunny
Về Đầu Trang Go down
https://dhth4btlt.forumvi.net
vandung
Hầu Tước
Hầu Tước
vandung

Nam
Tổng số bài gửi : 74
Points : 48897
Join date : 14/01/2011
Age : 35
Đến từ : BRVT

Quản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo) Empty
Bài gửiTiêu đề: Re: Quản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo)   Quản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo) I_icon_minitimeMon Mar 28, 2011 9:19 am

thanks rat nhieu, bai lam cua ban rat huu ich voi nhom minh day
Smile Smile
Về Đầu Trang Go down
GreatHead
Tá Điền
Tá Điền
GreatHead

Tổng số bài gửi : 3
Points : 47783
Join date : 29/03/2011

Quản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo) Empty
Bài gửiTiêu đề: Re: Quản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo)   Quản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo) I_icon_minitimeTue Mar 29, 2011 2:58 pm

TháiCK đã viết:
Lang thang trên mạng thấy cái code này hay Arrow
nên đưa lên cho mọi người tham khảo ,có thể áp dụng vào làm đề tài của thầy geek
Code:

Thông tin về thí sinh gồm: Mã thí sinh, Họ tên, Ngày sinh, điểm môn 1, điểm môn 2, điểm môn 3 và Tổng điểm.
Viết chương trình thực hiện các chức năng sau:
1.Nhập thêm thí sinh
Nhập thông tin về thí sinh (không nhập tổng điểm).
Có kiểm tra mã thí sinh khi nhập (không có hai thí sinh mã trùng nhau)
2.Sắp xếp thí sinh
Lựa chọn chức năng hiển thị danh sách thí sinh đã sắp xếp theo
a)Mã thí sinh
b)Tổng điểm
Sắp xếp danh sách thí sinh
Hiển thị kết quả lên màn hình (chỉ hiển thị mã, tên và tổng điểm).

Đầy là code tham khảo của mình
Bài này mình sử dụng 3 class : CacHamChung, ChucNang, ThiSinh
Class CacHamChung

package QuanLyTuyenSinh;



import java.io.*;

import java.util.StringTokenizer;


public class CacHamChung {

    public static boolean check= true; //Chú ý biến static

    //Ham doi cho

    public static void doiCho(ThiSinh a, ThiSinh b){ //phương thức hoán vị

        ThiSinh temp;

        temp= a;

        a= b;

        b= temp;

    }

    //Ham cat ten

    public static String catTen(String hoTen){

        String ten= "";

        String s= hoTen.toLowerCase();

        StringTokenizer strToken= new StringTokenizer(s," ");

        while(strToken.hasMoreTokens()){

            ten= strToken.nextToken();

        }

        return ten;

    }

    //Ham chuyen ve chu thuong

    public static String chuyenChuThuong(String s){

        return(s.toLowerCase());

    }

    //Ham nhap vao 1 so nguyen

    public static int nhapInt(){

        int n= 0;

        do{

            try{

                check= true;

                BufferedReader input= new BufferedReader(new InputStreamReader(System.in));

                System.out.print("");

                n= Integer.parseInt(input.readLine());

            }catch(Exception e){

                System.out.println("Xuat hien loi: "+e.getMessage());

                check= false;

            }

        }while(!check);

        return n;

    }

    //Ham nhap vao 1 so thuc

    public static float nhapFloat(){

        float n= 0;

        do{

            check= true;

        try{

            BufferedReader input= new BufferedReader(new InputStreamReader(System.in));

            System.out.print("");

            n= Float.parseFloat(input.readLine());

        }catch(Exception e){

            System.out.println("Xuat hien loi: "+e.getMessage());

            check= false;

        }

        }while(!check);

        return n;

    }

    //Ham nhap vao 1 string

    public static String nhapString(){

        String str="";

        try{

            BufferedReader input= new BufferedReader(new InputStreamReader(System.in));

            System.out.print("");

            str= input.readLine();

        }catch(IOException e){

            System.out.println("Xuat hien loi: "+e.getMessage());

        }return (str);

    }

}
Class ChucNang

package QuanLyTuyenSinh;

import java.io.*;


public class ChucNang {

    ThiSinh ts= new ThiSinh();

    ThiSinh[] list= new ThiSinh[50];

    public void ghiFile(ThiSinh t) {

        try{

            FileOutputStream fis= new FileOutputStream("QuanLyTuyenSinh.dat",true);

            PrintWriter pw= new PrintWriter(fis);

            pw.println(t.getMaTS());

            pw.println(t.getTenTS());

            pw.println(t.getNgaySinh());

            pw.println(t.getDiem1());

            pw.println(t.getDiem2());

            pw.println(t.getDiem3());

            pw.println(t.getTongDiem());

            pw.close();

            fis.close();

        }catch(IOException io){

            System.out.println("Xuat hien loi: "+io.getMessage());

        }

        finally{

            System.out.println("Ghi file thanh cong!");

        }

    }

    public void docFile(){

        try{

        int count= 1;

        FileReader fr= new FileReader("QuanLyTuyenSinh.dat");

        BufferedReader buffer= new BufferedReader(fr);

        buffer.readLine();

        while(buffer.readLine()!= null){

            count++;

        }

        ts.setSL(count/7);

        buffer.close();

        fr.close();

        FileReader fr2= new FileReader("QuanLyTuyenSinh.dat");

        BufferedReader input= new BufferedReader(fr2);

        for(int i=1 ; i<=ts.getSL(); i++){

            list[i]= new ThiSinh();

            list[i].setMaTS(Integer.parseInt(input.readLine()));

            list[i].setTenTS(input.readLine());

            list[i].setNgaySinh(input.readLine());

            list[i].setDiem1(Float.parseFloat(input.readLine()));

            list[i].setDiem2(Float.parseFloat(input.readLine()));

            list[i].setDiem3(Float.parseFloat(input.readLine()));

            list[i].setTongDiem(Float.parseFloat(input.readLine()));           

        }

        }catch(FileNotFoundException fe){

            System.out.println("Xuat hien loi: "+fe.getMessage());

        }catch(IOException io){

            System.out.println("Xuat hien loi: "+io.getMessage());

        }       

    }

    public void nhap(){

            int i= ts.getSL()+1;

            list[i]= new ThiSinh();

            boolean check= true;

            do{

                check= true;

                System.out.println("Nhap ma thi sinh: ");

                list[i].setMaTS(CacHamChung.nhapInt());

                for(int j=1 ; j<=ts.getSL() ; j++){

                    if(list[i].getMaTS()== list[j].getMaTS()){

                        check= false;

                        System.out.println("Ma sinh vien da ton tai !");

                    }

                }

            }while(!check);

       

        System.out.println("Nhap ten thi sinh: ");

        list[i].setTenTS(CacHamChung.nhapString());

        System.out.println("Nhap ngay sinh thi sinh (dd-mm-yy): ");

        list[i].setNgaySinh(CacHamChung.nhapString());

        System.out.println("Nhap diem mon thu 1: ");

        list[i].setDiem1(CacHamChung.nhapFloat());

        System.out.println("Nhap diem mon thu 2: ");

        list[i].setDiem2(CacHamChung.nhapFloat());

        System.out.println("Nhap diem mon thu 3: ");

        list[i].setDiem3(CacHamChung.nhapFloat());

        list[i].setTongDiem(list[i].getDiem1(), list[i].getDiem2() , list[i].getDiem3());

        ghiFile(list[i]);

    }

    public void hienThi(ThiSinh t){

        System.out.println("");

        System.out.println("Ma thi sinh      : "+t.getMaTS());

        System.out.println("Ten thi sinh      : "+t.getTenTS());

        System.out.println("Ngay sinh thi sinh: "+t.getNgaySinh());

        System.out.println("Diem mon 1        : "+t.getDiem1());

        System.out.println("Diem mon 2        : "+t.getDiem2());

        System.out.println("Diem mon 3        : "+t.getDiem3());

        System.out.println("Tong diem        : "+t.getTongDiem());

    }



    //Ham sap xep theo ma thi sinh

    public void sapXepTheoMaTS(){

        ThiSinh temp= new ThiSinh();

        for(int i=1 ; i<=ts.getSL() ; i++){

            for(int j=1 ; j<i ; j++){

                if(list[i].getMaTS()<list[j].getMaTS()){

                    temp= list[i];

                    list[i]= list[j];

                    list[j]= temp;

                }

            }

        }

        for(int i=1 ; i<=ts.getSL() ; i++){

            hienThi(list[i]);

        }

    }

    //Ham sap xep theo tong diem

    public void sapXepTheoTongDiem(){

        ThiSinh temp= new ThiSinh();

        for(int i=1 ; i<=ts.getSL() ; i++){

            for(int j=1 ; j<i ; j++){

                if(list[i].getTongDiem()<list[j].getTongDiem()){

                    temp= list[i];

                    list[i]= list[j];

                    list[j]= temp;                   

                }

            }

        }

        for(int i=1 ; i<=ts.getSL() ; i++){

            hienThi(list[i]);

        }

    }

    //Ham sap xep theo danh sach thi sinh

    public void sapXepTheoDanhSach(){

        ThiSinh temp= new ThiSinh();

        for(int i=1 ; i<=ts.getSL() ; i++){

            for(int j=1 ; j<i ; j++){

                if(CacHamChung.catTen(list[i].getTenTS()).compareTo(CacHamChung.catTen(list[j].getTenTS())) <0){

                    temp= list[i];

                    list[i]= list[j];

                    list[j]= temp;

                }

            }

        }

        for(int i=1 ; i<=ts.getSL() ; i++){

            hienThi(list[i]);

        }

    }

    //Ham tim kiem theo ten

    public void timKiemTheoTen(){

        String tenTK;

        int count= 0;

            System.out.println("Nhap ten ban muon tim kiem: ");

            tenTK= CacHamChung.nhapString();

            for(int i=1 ; i<=ts.getSL() ; i++){

                if(tenTK.equals(CacHamChung.catTen(list[i].getTenTS()))){

                    System.out.println("Cac thi sinh co "+tenTK+" la: ");

                    hienThi(list[i]);

                    count++;

                }

            }

            System.out.println("Co "+count+" ket qua phu hop");

    }

    //Ham tim kiem theo tong diem

    public void timKiemTheoTongDiem(){

        int td, count= 0;

        System.out.println("Nhap tong diem muon tim kiem: ");

        td= CacHamChung.nhapInt();

        System.out.println("Cac thi sinh co tong diem tren "+td+" la: ");

        for(int i=1 ; i<=ts.getSL() ; i++){

            if(list[i].getTongDiem() >= td){

                hienThi(list[i]);

                count++;

            }

        }

        System.out.println("Co "+count+" ket qua phu hop");

    }

    public void lietKeDanhSach(){

        for(int i=1 ; i<=ts.getSL() ; i++){

            hienThi(list[i]);

        }

    }

}
Class ThiSinh
package QuanLyTuyenSinh;

import java.util.Scanner;



public class ThiSinh {



    /**

    * @param args

    */

    private int maTS;

    private String tenTS;

    private String ngaySinh;

    private float diem1;

    private float diem2;

    private float diem3;

    private float tongDiem;

    private int sl= 0;

    public ThiSinh[] list;

   

    public void setMaTS(int maTS){

        this.maTS= maTS;

    }

    public int getMaTS(){

        return maTS;

    }

    public void setTenTS(String tenTS){

        this.tenTS= tenTS;

    }

    public String getTenTS(){

        return tenTS;

    }

    public void setNgaySinh(String ngaySinh){

        this.ngaySinh= ngaySinh;

    }

    public String getNgaySinh(){

        return ngaySinh;

    }

    public void setDiem1(float diem1){

        this.diem1= diem1;

    }

    public float getDiem1(){

        return diem1;

    }

    public void setDiem2(float diem2){

        this.diem2= diem2;

    }

    public float getDiem2(){

        return diem2;

    }

    public void setDiem3(float diem3){

        this.diem3= diem3;

    }

    public float getDiem3(){

        return diem3;

    }

    public void setTongDiem(float getDiem1, float getDiem2, float getDiem3){

        this.tongDiem= getDiem1+ getDiem2+ getDiem3;

    }

    public void setTongDiem(float tongDiem){

        this.tongDiem= tongDiem;

    }

    public float getTongDiem(){

        return tongDiem;

    }

    public void setSL(int sl){

        this.sl= sl;

    }

    public int getSL(){

        return sl;

    }

    public ThiSinh(){

    }

    public static void menu(){

        System.out.println("");

        System.out.println("**************** Quan ly tuyen sinh ****************");

        System.out.println("1. Nhap thi sinh");

        System.out.println("2. Sap xep theo ma thi sinh");

        System.out.println("3. Sap xep theo tong diem thi sinh");

        System.out.println("4. Sap xep theo danh sach thi sinh");

        System.out.println("5. Tim kiem theo ten");

        System.out.println("6. Tim kiem theo tong diem");

        System.out.println("7. Liet ke danh sach thi sinh");

        System.out.println("8. Thoat !");

    }

    public static void main(String[] args) throws Exception{

        // TODO Auto-generated method stub

        Scanner input= new Scanner(System.in);

        ChucNang cn= new ChucNang();

        ThiSinh t= new ThiSinh();

        while(true){

            menu();

            cn.docFile();

            System.out.println("so luong= "+t.getSL());

            int choice= input.nextInt();

            System.out.println("");

           

            if(choice== 8){

                System.out.println("....Thoat khoi chuong trinh....");

                System.exit(0);

            }

            switch(choice){

            case 1:

                cn.nhap();

                break;

            case 2:

                System.out.println("2. Sap xep theo ma thi sinh(tang dan)");

                cn.sapXepTheoMaTS();

                Thread.sleep(5000);

                break;

            case 3:

                System.out.println("3. Sap xep theo tong diem thi sinh (tang dan)");

                cn.sapXepTheoTongDiem();

                Thread.sleep(5000);

                break;

            case 4:

                System.out.println("4. Sap xep theo danh sach thi sinh");

                cn.sapXepTheoDanhSach();

                Thread.sleep(5000);

                break;

            case 5:

                System.out.println("5. Tim kiem theo ten");

                cn.timKiemTheoTen();

                Thread.sleep(5000);

                break;

            case 6:

                System.out.println("6. Tim kiem theo tong diem");

                cn.timKiemTheoTongDiem();

                Thread.sleep(5000);

                break;

            case 7:

                System.out.println("8. Liet ke danh sach thi sinh");

                cn.lietKeDanhSach();

                Thread.sleep(5000);

                break;

            }

        }

    }

}
Với bài quản lý trên thì với mỗi thuộc tính của sinh viên ta sử dụng 1 hàm để set giá trị cho nó và sử dụng contrutors mặc định để khời tạo 1 đối tượng ThiSinh. Tuy nhiên ta có thể làm các khác là set giá trị cho các thuộc tính ngay trong contructor -> ko cần sử dụng nhiều hàm
Đây là ví dụ về contructor trong bài quản lý sách
public Sach(int maSach, String tenSach, String tacGia, String NXB, String chuyenNganh, int soTrang){

        this.maSach= maSach;

        this.tenSach= tenSach;

        this.tacGia= tacGia;

        this.NXB= NXB;

        this.chuyenNganh= chuyenNganh;

        this.soTrang= soTrang;

    }

farao
Mình cũng chưa test nên không biết có lỗi không , mọi người về test thử nha queen


Bạn nào có thời gian có thể comment từng dòng để anh em học dễ hiểu tý nhe ! Mấy cái này nó khó hiểu đọc vào cứ như ... hic hic.... monkey monkey
Về Đầu Trang Go down
Sponsored content




Quản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo) Empty
Bài gửiTiêu đề: Re: Quản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo)   Quản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo) I_icon_minitime

Về Đầu Trang Go down
 

Quản Lý Sinh Viên Với Ghi Và Đọc File (Tham Khảo)

Xem chủ đề cũ hơn Xem chủ đề mới hơn Về Đầu Trang 

 Similar topics

-
» [Đề Tài] Quản Lý Sinh Viên (Gui Và Ghi Đọc File Đơn Giản)
» [Đề Kiểm Tra] -- Sinh Viên - Giảng Viên
» Hệ Thông Quản Lý Thư Viên
» Bộ tài liệu tham khảo XSTK nà
» Bài giải tham khảo (.Net C Shap)
Trang 1 trong tổng số 1 trang

Permissions in this forum:Bạn không có quyền trả lời bài viết
 :: Các Môn Hoàn Tất :: Lập trình hướng đối tượng-
Free forum | ©phpBB | Free forum support | Báo cáo lạm dụng | Thảo luận mới nhất