ĐỀ THI THAM KHẢO TIN HỌC TRẺ NĂM HỌC 2012-2013 THỜI GIAN: 120 PHÚT CÂU 1: cho dãy số A gồm n phần tử bất kỳ nhập từ bàn phím, viết chương trình tính tổng các số chia hết cho 3 và 5. CÂU 2: Viết chương trình tìm n nhỏ nhất để tổng của các số từ 1 đến n lớn hơn 1000. CÂU 3: Cho mảng A một chiều gồm 10 phần tử nhập từ bàn phím. Viết chương trình tìm số lần xuất hiện của phần tử x trong mảng. CÂU 4: Viết chương trình nhập vào một mảng số nguyên, tìm phần tử nhỏ nhất rồi hoán vị nó với phần tử thứ nhất. ĐỀ THI THAM KHẢO TIN HỌC TRẺ NĂM HỌC 2012-2013 THỜI GIAN: 120 PHÚT CÂU 1: cho dãy số A gồm n phần tử bất kỳ nhập từ bàn phím, viết chương trình tính tổng các số chia hết cho 3 và 5. CÂU 2: Viết chương trình tìm n nhỏ nhất để tổng của các số từ 1 đến n lớn hơn 1000. CÂU 3: Cho mảng A một chiều gồm 10 phần tử nhập từ bàn phím. Viết chương trình tìm số lần xuất hiện của phần tử x trong mảng. CÂU 4: Viết chương trình nhập vào một mảng số nguyên, tìm phần tử nhỏ nhất rồi hoán vị nó với phần tử thứ nhất. ĐỀ THI THAM KHẢO TIN HỌC TRẺ NĂM HỌC 2012-2013 THỜI GIAN: 120 PHÚT CÂU 1: cho dãy số A gồm n phần tử bất kỳ nhập từ bàn phím, viết chương trình tính tổng các số chia hết cho 3 và 5. CÂU 2: Viết chương trình tìm n nhỏ nhất để tổng của các số từ 1 đến n lớn hơn 1000. CÂU 3: Cho mảng A một chiều gồm 10 phần tử nhập từ bàn phím. Viết chương trình tìm số lần xuất hiện của phần tử x trong mảng. CÂU 4: Viết chương trình nhập vào một mảng số nguyên, tìm phần tử nhỏ nhất rồi hoán vị nó với phần tử thứ nhất. ĐỀ THI THAM KHẢO TIN HỌC TRẺ NĂM HỌC 2012-2013 THỜI GIAN: 120 PHÚT CÂU 1: cho dãy số A gồm n phần tử bất kỳ nhập từ bàn phím, viết chương trình tính tổng các số chia hết cho 3 và 5. CÂU 2: Viết chương trình tìm n nhỏ nhất để tổng của các số từ 1 đến n lớn hơn 1000. CÂU 3: Cho mảng A một chiều gồm 10 phần tử nhập từ bàn phím. Viết chương trình tìm số lần xuất hiện của phần tử x trong mảng. CÂU 4: Viết chương trình nhập vào một mảng số nguyên, tìm phần tử nhỏ nhất rồi hoán vị nó với phần tử thứ nhất. 1 ĐÁP ÁN ĐỀ THI THAM KHẢO TIN HỌC TRẺ NĂM HỌC 2012-2013 CÂU 1: cho dãy số A gồm n phần tử bất kỳ nhập từ bàn phím, viết chương trình tính tổng các số chia hết cho 3 và 5. Program chiahet3va5; Uses crt; Var i, n, : integer; Tong, ai:real; Begin Write(‘nhap so phan tu cua mang n=’); Readln(n); I:=0; Tong:=0; For i:= 1 to n do Begin Write(‘nhap phan tu thu ‘,i:2,’ ’); Readln(ai); If (ai mod 3 =0) and (ai mod 5 = 0) then tong:=tong+ai; End. Write(‘tong cac so chia het cho 3 va 5 la:’,tong); Readln End. Câu 2: Viết chương trình tìm n nhỏ nhất để tổng của các số từ 1 đến n lớn hơn 1000. Program timn; Uses crt; Var tong, i:integer; Begin Clrscr; Tong:=0; i:=0; While tong<1000 do Begin i:=i+1; Tong:=tong+i; End; Writeln(‘so n nho nhat de tong lon hon 1000 la’,i:4); Write(‘gia tri cua tong la’,tong:4); Readln End. Câu 3: Cho mảng A một chiều gồm 10 phần tử nhập từ bàn phím. Viết chương trình tìm số lần xuất hiện của phần tử x trong mảng. Program demx; Uses crt; Const n=10; Var a:array[1 10] of real; x:real; Dem, i, spt:integer; Begin Clrscr; 2 Write(‘nhap so phan tu cua mang’); Readln(spt); For i:=1 to spt do Begin Write(‘nhap phan tu thu ‘,i,’ ’); readln(a[i]); End; Write(‘nhap vao phan tu x can dem:’); Readln(x); For i:= 1 to spt do If a[i]=x then inc(dem); If dem=0 then write(‘khong co phan tu nao bang x!’) else Write(co ‘,dem,’ phan tu bang x!’); Readln; End. Câu 4: Viết chương trình nhập vào một mảng số nguyên, tìm phần tử nhỏ nhất rồi hoán vị nó với phần tử thứ nhất. Program hoanvi; Uses crt; Var a:array[1…50] of integer; n, i, vitri, min:integer; Begin Clrscr; Write(‘nhap so phan tu cua mang’); Readln(n) For i:=1 to n do Begin Write(‘nhap phan tu thu ‘,i,’ ’); Readln(a[i]); End; Writeln(‘cac phan tu cua mang la:’); For i:=1 to n do write(a[i]); writeln; Min:=a[1]; For i:=2 to n do begin If min>a[i] then begin min:=a[i]; vitri:=i; end; end; a[vitri]:=a[1]; a[1]:=min; writeln(‘mang sau khi doi cho la:’); for i:=1 to n do write(a[i]); writeln; readln end. 3 Bài 6 - Nhập vào 1 mảng gồm n số nguyên (2<n<20). In ra các số nguyên tố có trong mảng program Mang; uses crt; var a:array [ 1 20] of byte; i,n,d,j,k:integer; procedure nhap; begin for i:=1 to n do begin write(' a[',i,']=');readln(a[i]); end; end; procedure nguyento; begin write(' Day so cac so nguyen to:'); k:=0; for i:=1 to n do begin d:=0; for j:=1 to a[i]-1 do if a[i] mod j=0 then d:=d+1; if d=1 then begin write(' ',a[i]); k:=k+1; end; end; if k=0 then write(' khong co so nao') else begin writeln; writeln(' Trong day co ',k,' so nguyen to'); end; end; begin clrscr; repeat write(' Nhap n=');readln(n); until (2<n)and(n<20); nhap; nguyento; readln; end. 1. , Nhập vào 1 dãy n số, sau đó in số dương 1 dòng, số âm 1 dòng: PROGRAM am_duong_cach_biet; USES crt; VAR a:ARRAY[1 100] OF INTEGER; i,n:BYTE; BEGIN 4 clrscr; write('Nhap so phan tu cua day vao: '); readln(n); FOR i:=1 TO n DO BEGIN write('Nhap phan tu thu: ',i,' vao: '); readln(a[i]); END; write('Nhung so duong la: '); FOR i:=1 TO n DO IF a[i]>0 THEN write(a[i],' '); writeln; write('Nhung so am la : '); FOR i:=1 TO n DO IF a[i]<0 THEN write(a[i],' '); readln; END. 10,Tính trung bình cộng riêng các số dương, âm nhập vào từ 1 mảng PROGRAM tbc_am_duong_mang; USES crt; VAR a:ARRAY[1 100] OF REAL; i,n,x,y:INTEGER; tongam,tongduong,tba,tbd:REAL; BEGIN clrscr; write('So phan tu cua day n= ');readln(n); FOR i:=1 TO n DO BEGIN write('Nhap phan tu a[',i,']: '); readln(a[i]); END; tongam:=0; x:=0; FOR i:=1 TO n DO IF a[i]<0 THEN BEGIN tongam:=tongam+a[i]; x:=x+1; END; tba:=tongam/x; write('TB cong cac so am la: ',tba:5:1); writeln; tongduong:=0; y:=0; FOR i:=1 TO n DO IF a[i]>0 THEN BEGIN tongduong:=tongduong+a[i]; y:=y+1; END; tbd:=tongduong/y; write('TB cong cac so duong la: ',tbd:5:1); readln; END. 5 . a[1]:=min; writeln(‘mang sau khi doi cho la:’); for i:=1 to n do write(a[i]); writeln; readln end. 3 Bài 6 - Nhập vào 1 mảng gồm n số nguyên (2<n<20). In ra các số nguyên tố có trong mảng program