Xây dựng menu chương trình thực hiện những công việc sau: “Bài toán với dữ liệu kiểu bản ghi”. Viết chương trình quản lý điểm thi đại học của thí sinh

Xây dựng menu chương trình thực hiện những công việc sau: “Bài toán với dữ liệu kiểu bản ghi”.
Viết chương trình quản lý điểm thi đại học của thí sinh bao gồm các trường sau: Số báo danh, họ tên, ngày sinh, giới tính, điểm toán, văn, tiếng anh, tổng điểm, xếp loại. Thực hiện các công việc sau:
Nhập vào danh sách N thí sinh (không quá 30 người), bao gồm: Số báo danh, họ tên, ngày sinh, giới tính, điểm toán, văn, tiếng anh. Tính tổng điểm (=toán + văn + tiếng anh) và xếp loại cho từng thí sinh (nếu tổng điểm >=29, “thủ khoa”, tổng điểm >=25 ,“xuất sắc”, tổng điểm >=20, “có cơ hội đậu”, còn lại là “ôn lại năm sau”).
1. In ra danh sách thí sinh.
2. Đưa ra danh sách thí sinh có tổng điểm cao nhất.
3. Sắp xếp các bản ghi theo tổng điểm tăng dần.
4. Đưa ra danh sách thí sinh xếp loại xuất sắc.
5. Đưa ra danh sách thí sinh nam có điểm trung bình 2 môn toán, văn trên 7.5
6. Viết chức năng tra cứu theo số báo danh của thí sinh. Ví dụ: Khi nhập vào số báo danh X thì chương trình sẽ tìm và in ra màn hình thông tin đầy đủ của thí sinh đó.

0 bình luận về “Xây dựng menu chương trình thực hiện những công việc sau: “Bài toán với dữ liệu kiểu bản ghi”. Viết chương trình quản lý điểm thi đại học của thí sinh”

  1. uses crt;
    type hs=record
            sbd:longint;
            hoten,gtinh,nsinh:string;
            toan,van,anh:extended;
    end;
    var a:array[0..50]of hs;
        i,n,s,j:longint;
        max:extended;
        tg:hs;
    begin
            clrscr;
            write(‘so hoc sih:’);readln(n); max:=0;
            for i:=1 to n do
                    begin
                            write(‘sbd:’); readln(a[i].sbd);
                            write(‘ho ten:’); readln(a[i].hoten);
                            write(‘ngay sinh:’); readln(a[i].nsinh);
                            write(‘gioi tinh:’); readln(a[i].gtinh);
                            write(‘diem toan:’); readln(a[i].toan);
                            write(‘diem van:’); readln(a[i].van);
                            write(‘diem anh:’); readln(a[i].anh);
                            if ((a[i].toan)+(a[i].van)+(a[i].anh))>max then
                            max:=((a[i].toan)+(a[i].van)+(a[i].anh));
                    end;
            for i:=1 to n do
                 begin
                            writeln(‘sbd: ‘,a[i].sbd:0);
                            writeln(‘ho ten: ‘,a[i].hoten);
                            writeln(‘ngay sinh: ‘,a[i].nsinh);
                            writeln(‘gioi tinh: ‘,a[i].gtinh);
                            writeln(‘diem toan: ‘,a[i].toan:1:1);
                            writeln(‘diem van: ‘,a[i].van:1:1);
                            writeln(‘diem anh: ‘,a[i].anh:1:1);
                 end;
            for i:=1 to n do
                    if ((a[i].toan)+(a[i].van)+(a[i].anh))=max then
                    begin
                            writeln(‘sbd: ‘,a[i].sbd:0);
                            writeln(‘ho ten: ‘,a[i].hoten);
                            writeln(‘ngay sinh: ‘,a[i].nsinh);
                            writeln(‘gioi tinh: ‘,a[i].gtinh);
                            writeln(‘diem toan: ‘,a[i].toan:1:1);
                            writeln(‘diem van: ‘,a[i].van:1:1);
                            writeln(‘diem anh: ‘,a[i].anh:1:1);
                    end;
            for i:=1 to n-1 do
                    for j:=i+1 to n do
                            if ((a[i].toan)+(a[i].van)+(a[i].anh))>((a[j].toan)+(a[j].van)+(a[j].anh)) then
                            begin
                                    tg:=a[i]; a[i]:=a[j]; a[j]:=tg;
                            end;
            for i:=1 to n do
                    begin
                            writeln(‘sbd: ‘,a[i].sbd:0);
                            writeln(‘ho ten: ‘,a[i].hoten);
                            writeln(‘ngay sinh: ‘,a[i].nsinh);
                            writeln(‘gioi tinh: ‘,a[i].gtinh);
                            writeln(‘diem toan: ‘,a[i].toan:1:1);
                            writeln(‘diem van: ‘,a[i].van:1:1);
                            writeln(‘diem anh: ‘,a[i].anh:1:1);
                    end;
            for i:=1 to n do
                    begin
                            if (((a[i].toan)+(a[i].van)+(a[i].anh))>=25) and
                            (((a[i].toan)+(a[i].van)+(a[i].anh))<29) then
                                 begin
                                    writeln(‘sbd: ‘,a[i].sbd:0);
                                    writeln(‘ho ten: ‘,a[i].hoten);
                                    writeln(‘ngay sinh: ‘,a[i].nsinh);
                                    writeln(‘gioi tinh: ‘,a[i].gtinh);
                                    writeln(‘diem toan: ‘,a[i].toan:1:1);
                                    writeln(‘diem van: ‘,a[i].van:1:1);
                                    writeln(‘diem anh: ‘,a[i].anh:1:1);
                                 end;
                    end;
            for i:=1 to n do
                    begin
                            if (((a[i].van)+(a[i].toan))/2)>7.5 then begin
                                    writeln(‘sbd: ‘,a[i].sbd:0);
                                    writeln(‘ho ten: ‘,a[i].hoten);
                                    writeln(‘ngay sinh: ‘,a[i].nsinh);
                                    writeln(‘gioi tinh: ‘,a[i].gtinh);
                                    writeln(‘diem toan: ‘,a[i].toan:1:1);
                                    writeln(‘diem van: ‘,a[i].van:1:1);
                                    writeln(‘diem anh: ‘,a[i].anh:1:1);
                            end;
                    end;
            write(‘tra sbd:’);readln(s);
            for i:=1 to n do
                    if a[i].sbd = s then begin
                            writeln(‘sbd: ‘,a[i].sbd:0);
                            writeln(‘ho ten: ‘,a[i].hoten);
                            writeln(‘ngay sinh: ‘,a[i].nsinh);
                            writeln(‘gioi tinh: ‘,a[i].gtinh);
                            writeln(‘diem toan: ‘,a[i].toan:1:1);
                            writeln(‘diem van: ‘,a[i].van:1:1);
                            writeln(‘diem anh: ‘,a[i].anh:1:1);
                    end;
            readln;
            readln;
    end.

    Bình luận

Viết một bình luận