Viết 1 ch ơng trình dùng để quản lí kết quả kiểm tra chất l ợng của học sinh với 2 môn Toán và Văn Chươngưtrìnhưcầnưquảnưlíưgồm: STT, SBD Họ và tên, Ngày sinh, Giới tính, Điểm môn
Trang 1H é i g i ¶ n g Mïa xu©n
Trang 2Viết 1 ch ơng trình dùng để quản lí kết quả kiểm tra chất l ợng của học sinh với 2 môn Toán và Văn
Chươngưtrìnhưcầnưquảnưlíưgồm:
STT, SBD
Họ và tên, Ngày sinh, Giới tính,
Điểm môn Toán, điểm môn Văn, tổng, kết quả…iểm môn Toán, điểm môn Văn, tổng, kết quả…
Bài toán đặt vấn đề
Trang 3Bảng kết qủa kiểm tra chất l ợng
Bài toán đặt vấn đề
Bản ghi
(Record)
Tr ờng
(Field)
Yêu cầu: Nhập vào các thông tin của từng học sinh Tính tổng và xét
kết quả, biết nếu tổng >=12 thì kết quả là “ Điểm môn Toán, điểm môn Văn, tổng, kết quả…ạt”
Trang 4Đ13.kiểu bản ghi
1 Kháiưniệm
Là 1 kiểu dữ liệu có cấu trúc dùng
để mô tả các đối t ợng có cùng 1
số thuộc tính mà các thuộc tính
có thể có các kiểu dữ liệu khác
nhau
2.ưKhaiưbáo Type <Tên kiểu bản ghi> = record
<Têntr ờng1>:<kiểutr ờng1>;
……….
<Têntr ờngk>:<kiểutr ờngk>;
end ;
Var
<tênbiếnbản ghi>: <Tên kiểu bản ghi>;
Cấu trúc
Trang 5STT Hävµtªn To¸n V¨n Tæng KÕtqu¶
1 Ph¹m ThÞ An 7.5 6.0
2 Vò ThÞ BÝch 6.5 7.5
48 TrÇn H¶i TriÖu 8.0 6.5
49 Bïi V¨n Tr êng 6.0 5.5
50 NguyÔn ThÞ YÕn 8.5 8.0
Hoten,ketqua:
string [30];
STT:Integer;
Toan,Van,Tong:real;
end ;
i,n:Byte;
VÝdô:
Khai b¸o kiÓu dl cho c¸c tr êng
Khai b¸o biÕn kiÓu b¶n ghi
Trang 6Đ13.kiểu bản ghi
2.ưKhaiưbáo
3.ưThamưchiếuưđếnưtừngưtrườngư
củaưbiếnưbảnưghi
Ví dụ:
Lop[i].hoten Lop[i].Toan Tên_biến_bản_ghi . Tên_trường
1.ưKháiưniệm
4.ưGánưgiáưtrịưchoưbiếnưbảnưghi
- Gán nguyên cả biến bản ghi
- Gán lần l ợt từng tr ờng
Ví dụ:
A:= B;
A.hoten := B.hoten;
A.Toan := B.Toan;…
Chú ý:ưHaiưbiếnưAưvàưBưphảiưđư
ợcưkhaiưbáoưcùngư1ưkiểuưbảnư
ghi
Trang 7Đ13.kiểu bản ghi
ưa,ưNhậpưthôngưtinưhọcưsinh
- Nhập số học sinh
- Nhập dữ liệu (các thuộc tính
) của từng bản ghi
Write(‘ Nhap vao so hoc sinh trong lop’); readln(n);
For i:=1 to n do Begin
Write(‘ So thu tu ’); readln(Lop[i].STT); Write(‘ Ho va ten’); readln(Lop[i].hoten); Write(‘ Diem Toan’); readln(Lop[i].Toan); Write(‘ Diem Van’); readln(Lop[i].Van); End;
5.ưVíưdụưvềưcácưthaoưtácưvớiư
bảnưghi (bàiưtoánưđặtưvấnưđề)
Trang 8§13.kiÓu b¶n ghi
NhËp gi¸ trÞ tr êng cho SBD cña häc sinh thø 1 n»m ë b¶n ghi ®Çu tiªn T
¬ng tù nh vËy nhËp cho c¸c tr êng cßn l¹i
1 Ph¹m ThÞ An 7.5 6.0
Qu¸ tr×nh nhËp kÕt thóc khi nhËp hÕt d÷ liÖu cho b¶n ghi thø n
Líp
Khi i=1 Lop[1].SBD
Trang 9Đ13.kiểu bản ghi
TínhưtổngưđiểmưToánưvàưVănưcủaưtừngưhọcưsinhưtrongưlớp: ư
For i:=1 to n do
Lop[i].Tong := Lop[i].Toan + Lop[i].Van;
Kiểmưtraưđiềuưkiệnưđểưđưaưraưkếtưquả: ư
For i:=1 to n do
If Lop[i].Tong >=12 then Lop[i].ketqua := ‘Dat’ else Lop[i].ketqua := ‘Khongdat’;
Trang 10§13.kiÓu b¶n ghi
- Th«ng b¸o in
Writeln(Lop[i].SBD:5, Lop[i].Hoten:30, Lop[i].Toan:5:1, Lop[i].Van:5:1, Lop[i].Tong:8:1, Lop[i].ketqua:15);
Writeln(‘ Bang ket qua kt chat luong’);
Trang 11Ch ¬ng tr×nh thÓ hiÖn b»ng Pascal
Program Ket_qua;
Uses crt;
Const Max=60;
Type Hocsinh = record
Hoten, ketqua : string[30];
STT : Integer;
Toan, Van, Tong: real;
end;
Var Lop : array[1 Max] of Hocsinh;
i, n : Byte;
BEGIN
clrscr;
Write(‘ Nhap so hoc sinh n= ‘); readln(n);
For i:=1 to n do
Begin
Write(‘ So thu tu ’); readln(Lop[i].STT); Write(‘ Ho va ten’); readln(Lop[i].hoten); Write(‘ Diem Toan’); readln(Lop[i].Toan); Write(‘ Diem Van’); readln(Lop[i].Van); Lop[i].Tong := Lop[i].Toan + Lop[i].Van;
If Lop[i].Tong >=12 then Lop[i].ketqua :=
‘Dat’
else Lop[i].ketqua := ‘Khongdat’;
End;
Writeln(‘ Bang ket qua kt chat luong’);
For i:= 1 to n do Writeln(Lop[i].SBD:5, Lop[i].Hoten:30, Lop[i].Toan:5:1, Lop[i].Van:5:1,
Lop[i].Tong:8:1, Lop[i].ketqua:15);
Readln
END.
Trang 123.ưThamưchiếuưđếnưtừngưtrườngư
củaưbiếnưbảnưghi
4.ưGánưgiáưtrịưchoưbiếnưbảnưghi
<Têntr ờng1>:<kiểutr ờng1>;
……….
<Têntr ờngk>:<kiểutr ờngk>;
end ;
Var
<tênbiếnbản ghi>: <Tên kiểu bản ghi>;
Tên_biến_bản_ghi . Tên_trường
Hãy nhớ
Yêu cầu về nhà: Xem phần cấu trúc câu lệnh With…do (sgk- tr134) và làm bài tập 11- sgk tr 80
Củng cố
Trang 13gi¸ovµc¸cemhäcsinhm¹nh
khoÎ,h¹nhphóc
KÝnhchócc¸cthÇygi¸o,c«
gi¸ovµc¸cemhäcsinhm¹nh
khoÎ,h¹nhphóc
Thuþ Anh
Trang 14STT Họưvàưtên Toán Văn Tổng Kếtưquả
1 Phạm Thị An 7.5 6.0
2 Vũ Thị Bích 6.5 7.5
48 Trần Hải Triệu 8.0 6.5
49 Bùi Văn Tr ờng 6.0 5.5
50 Nguyễn Thị Yến 8.5 8.0
ưưưưưưưưưưưưưưưưưưưưưưưưư Hoten,ưketquaư: ư string [30];
ưưưưưưưưưư STTư:ưInteger;
ư ưưưưưưưưưưưưưưưưưưưưưưưưToan,ưVan,ưTong:ưreal;
ưưưưưưưưend ;
ưi,ưnư:ưByte;
Víưdụ:
B1: Tạo kiểu dl, khai báo biến
B2: - Nhập dl cho mảng các bản ghi
- Tính tổng điểm Toán- Văn
- Dựa vào tổng để đ a ra kết quả