MÔN THI: TIN HỌC 9 Thời gian: 150 phút không kể thời gian giao đề Hãy sử dụng ngôn ngữ lập trình Pascal để viết các chương trình sau: QUY ƯỚC TÊN TẬP TIN VÀ TÊN CHƯƠNG TRÌNH.. Bài Bài Bà[r]
(1)PHÒNG GIÁO DỤC VÀ ĐÀO TẠO THỊ XÃ GIA NGHĨA KỲ THI HỌC SINH GIỎI BẬC THCS CẤP THỊ XÃ NĂM HỌC 2011 – 2012 MÔN THI: TIN HỌC Thời gian: 150 phút (không kể thời gian giao đề) Hãy sử dụng ngôn ngữ lập trình Pascal để viết các chương trình sau: QUY ƯỚC TÊN TẬP TIN VÀ TÊN CHƯƠNG TRÌNH Bài Bài Bài Bài Bài Bài Tên tệp tin Bai1.pas Bai2.pas Bai3.pas Bai4.pas Bai5.pas Tên chương trình Nhan_hai_so_nguyen Tong_can Xoa_ki_tu So_nhi_phan Sap_xep_chen_them Bài (4 điểm) Viết chương trình nhập từ bàn phím hai số nguyên dương, số gồm ba chữ số và in chi tiết kết phép nhân màn hình ví dụ sau: 456 x 789 -4104 3648 3192 359784 Bài (3 điểm) Viết chương trình nhập vào từ bàn phím số nguyên dương n (n≤1000), sau đo tính và in lên màn hình giá trị của T (kết lấy đến chữ số thập phân): T= √ 1+ √ 2+ + √ n (co n dấu bậc hai) Bài (3 điểm) Viết chương trình nhập xâu ký tự St từ bàn phím và ký tự ch In màn hình xâu St sau xoa hết các ký tự ch xâu đo Bài (4 điểm) Viết chương trình nhập số nguyên n từ bàn phím Chuyển số n vừa nhập thành số nhị phân ? Ví dụ: Nhap n= So chuyen so nhi phan la : 111 Nhap n= 101 So 101 chuyen so nhi phan la : 1100101 Bài (6 điểm) Nhập vào mảng các số nguyên a/ Xếp lại mảng đo theo thứ tự giảm dần b/ Nhập vào số nguyên từ bàn phím Chèn số đo vào mảng cho mảng co thứ tự giảm dần (không xếp lại mảng) CHƯƠNG TRÌNH MẪU (2) TT bài Bài Bài Bài Chương trình mẫu Program nhan_hai_so; Uses Crt; Var m, n: Integer; i: byte; l: longint; Begin Clrscr; Repeat Write('Nhap so co chu so: m= ');Readln(m); Write('Nhap so co chu so: n= ');Readln(n); Until (m<1000) and (n<1000); l:=m*n; Writeln; Writeln(m:12); Writeln('x':7); Writeln(n:12); writeln(' -':13); i:=12; while n>0 begin Writeln(m*(n mod 10):i); n:= n div 10; i:=i-1; end; Writeln(' -':13); Writeln(l:12); Readln; End Program chen_so_vao_mang; Uses Crt; Var n, i: integer; t:real; Begin Clrscr; Write('nhap so n= ');readln(n); t:=0; for i:=1 to n t:=sqrt(t+sqrt(i)); Writeln('Gia tri bieu thuc la: ',t:10:6); readln; End Program xoa_xau; Uses Crt; Var st: string; ch: char; i: Integer; Điểm 0.5 0.5 1.5 0.5 0.5 0.5 1.5 0.5 0.5 (3) Bài Bài Begin CLRSCR; Write('Nhap xau: ');readln(st); Write('nhap ki tu can xoa: ');readln(ch); i:= 1; While i<= length(st) Begin if st[i]=ch then Delete(st,i,1) elses i:=i + 1; Writeln('Xau sau xoa la: ',st); readln; End Program DOI_THAP_PHAN_SANG_NHI_PHAN; Uses Crt; Var d:array[1 20] of byte; i, j, n: integer; Begin Clrscr; Writeln('DOI SO THAP PHAN SANG NHI PHAN:'); Writeln(' '); Write('Nhap so thap phan la n='); Readln(n); i:=1; Repeat d[i]:=n mod 2; n:=n div 2; i:=i+1; Until(n=0); Write('So nhi phan la:'); For j:=i-1 downto Write (d[j]); Readln; End Program chen_so_vao_mang; Uses Crt; Var A:Array[1 50] of integer; i, n, tg, j, m: Byte; Begin Clrscr; Write('nhap so phan tu mang:n= ');readln(n); for i:=1 to n begin write('A[',i,']= ');Readln(a[i]); end; Write('nhap so nguyen m= ');readln(m); For i:=1 to n begin 0.5 1.5 0.5 0.5 0.5 0.5 1.5 (4) for j:=1 to i if a[i]>a[j] then begin tg:=a[i]; a[i]:=a[j]; a[j]:=tg; end; end; For i:=n downto if a[i]>m then a[n+1]:=m; For i:=n downto if a[i]<=m then begin A[i+1]:=a[i]; a[i]:=m; end; Writeln(‘Day so sau chen them so la:’); for i:=1 to n+1 write(a[i],' '); readln; End 1.5 0.5 (5)