Quảng cáo
Thi học sinh giỏi môn Tin học cấp thành phố lớp 9 - Năm học 2006 - 2007
QR

Thi học sinh giỏi môn Tin học cấp thành phố lớp 9 - Năm học 2006 - 2007

Nguồn: thuviendethi.com

Xem trước nội dung

UBND thành phố huế

Phòng Giáo dục

thi học sinh giỏi môn tin học cấp thành phố

Lớp 9 - Năm học 2006-2007

Thời gian: 120 phút (Không kể thời gian giao đề)

Yêu cầu: Mỗi thí sinh tạo một Folder mang tên là: K9-<Số báo danh của thí sinh > chứa trong D:\ và

lưu các file sau vào đúng Folder vừa tạo.

Câu 1 (3 điểm) : Tạo file mang tên BAI1.PAS thực hiện chương trình sau :

Kết quả thi của học sinh gồm những thông tin sau: Họ tên, lớp, điểm toán (DT), điểm văn(DV), điểm

trung bình (DTB), xếp loại(XL). Trong đó:

- Điểm trung bình được tính như sau: DTB=(DT*2+DV)/3

- Xếp loại dựa trên điểm trung bình như sau:

Nếu DTB>=8.0, xếp loại giỏi

Nếu 8.0>DTB>=6.5, xếp loại khá.

Nếu 6.5>DTB>=5.0, xếp loại trung bình

Còn lại xếp loại chưa đạt

Hãy viết chương trình dưới dạng các chương trình con thực hiện việc in ra màn hình danh sách học

sinh theo thứ tự giảm dần của điểm trung bình kèm theo các thông tin: Họ tên, lớp, điểm trung bình,

xếp loại.

Câu 2 (3 điểm) : Tạo file mang tên BAI2.PAS thực hiện chương trình sau :

Viết chương trình theo yêu cầu sau:

- Khi nhấn phím “n” hoặc “N”: chương trình thực hiện đổi một số thập phân sang dãy số nhị phân.

- Khi nhấn phím “t” hoặc “T”: chương trình thực hiện đổi dãy số nhị phân sang số thập phân.

Câu 3 (4 điểm) : Tạo file mang tên BAI3.PAS thực hiện chương trình sau:

Hai file SN1.TXT, SN2.TXT chứa các số nguyên bất kì. Hãy viết chương trình tạo file KQ.OUT chứa

các số nguyên được sắp xếp theo thứ tự tăng dần, mỗi số trong file KQ.OUT là tổng của hai số nguyên

lấy từ file SN1.TXT và SN2.TXT.

Ví dụ: File SN1.TXT chứa các số nguyên: 1 9 7 12; SN2.TXT chứa các số nguyên: 31 5 2 1 thì

file KQ.OUT có kết quả: 9 13 14 32.

Thí sinh không được sử dụng tài liệu

Giám thị không giải thích gì thêm

ThuVienDeThi.com

đáp án 9

Bài 1:

type HS=record ht:string; lop:string[10]; dt,dv,dtb:real; xl:string[10]; end; hs1=array[1..20] of hs; var hss:hs1; i,j,n:integer;

procedure nhap(var hss:hs1); begin writeln(' nhap thong tin cho hoc sinh:'); for i:=1 to n do begin with hss[i] do begin writeln(' nhap ho ten'); readln(ht); writeln(' nhap lop'); readln(lop); writeln(' nhap diem toan'); readln(dt); writeln(' nhap diem van'); readln(dv); dtb:=(dt*2+dv)/3; if dtb>=8.0 then xl:=' loai gioi' else if dtb>=6.5 then xl:='loai kha' else if dtb>=5.0 then xl:='loai trung binh' else xl:=' loai chua dat';

end; end; end; {------------------------} procedure sx(var hss:hs1); var tam:hs; begin for i:=1 to n-1 do for j:=i+1 to n do if hss[i].dtb<hss[j].dtb then begin

tam:=hss[i]; hss[i]:=hss[j]; hss[j]:=tam; end; readln; end; Begin writeln(' nhap so hoc sinh'); readln(n);

nhap(hss); sx(hss); writeln(' ket qua sau khi sap xep'); for i:=1 to n do

ThuVienDeThi.com

with hss[i] do begin writeln(ht,' ',lop,' ',dtb:0:2,' ',xl); end; readln; End.

Bài 2:

var st,st2:string; p,i,n,j,t:integer; ch,ch1:char; procedure nhap; begin writeln('nhap so thap phan n:'); readln(n); end; procedure doinp(n:integer); var st1,stt:string;t,d:integer; begin st1:=''; repeat t:=n div 2; d:=n mod 2; n:=t; str(d,stt); st1:=st1+stt; until t=0; for i:=length(st1) downto 1 do write(st1[i]:3); writeln; end; function hammu(n:integer):integer; var p:integer; begin if n=0 then hammu:=1 else begin p:=1; for i:=1 to n do begin p:=P*2; end; hammu:=p; end; end; procedure doitp(st:string;var t:integer); var so,k,i:integer; begin t:=0; for i:=1 to length(st) do begin val(st[i],k,so); t:=t+k*hammu(length(st)-i); end; end;

BEGIN repeat writeln(' moi ban chon chuc nang');

ThuVienDeThi.com

Trên đây là phần đầu tài liệu — bấm Đọc sách để xem đầy đủ.

Quảng cáo
Quảng cáo