Hãy nêu sự khác biệt giữa câu lệnh lặp với số lần biết trước và câu lệnh lặp với số lần chưa biết trước?. So sánh lệnh IF dạng thiếu và lệnh WHILE 43. Hãy nêu các lợi ích của việc sử dụn
Trang 1Trường THCS TRẦN CAO VÂN ĐỀ CƯƠNG ÔN TẬP HỌC KỲ II
Môn: Tin 8 (Năm học 2010-2011)
Họ tên HS: Lớp : 8/
I/ Lý thuyết:
1 Viết cấu trúc của các câu lệnh : IF , For…to…do và While…do? Cho ví dụ?
2 Hãy nêu sự khác biệt giữa câu lệnh lặp với số lần biết trước và câu lệnh lặp với số lần chưa biết trước?
3 So sánh lệnh IF (dạng thiếu) và lệnh WHILE
4 Hãy nêu các lợi ích của việc sử dụng mảng trong chương trình?
5 Câu lệnh Pascal sau đúng hay sai? Hãy chỉ ra lỗi sai nếu có
a For i:=2 to 10; do x:=x+1;………
b For i:=11 to 1 do x:=x+1;………
c For i:=1 to 10 for j:=1 to 10 do x:=x+1;………
d For i:=1 to 10 do for i:=1 to 10 do x:=x+1;………
e While b>=a; do write (‘b khong nho hon a’);………
g While 2=2 do write (‘toi that la gioi’);………
6 Các khai báo mảng sau đây là đúng hay sai? Nếu sai hãy sửa lại cho đúng a) var X : Array [10, 13] of integer;………
b) var X : Array [3.4 4.8] of integer;………
c) var X : Array [10 1] of integer;………
7 Tìm giá trị của S trong đọan chương trình dưới đây: a) S := 0; For i := 1 to 5 do S := S + i; S = b) I:=1; While i<=5 do Begin S:= S + I; I:= I + 1; End; S = II/ Bài tập: VIẾT CÁC CHƯƠNG TRÌNH SAU: 1 Viết chương trinh tính tổng A = 1 + 1 1 1
2 + +3 n, với n là số tự nhiên được nhập từ bàn phím 2 Viết ch trinh tính tổng A = 1 + 1 2 1
5
1 3
1
− + + +
n , với n là số tự nhiên được nhập từ bàn phím.
3 Tính tổng bình phương n số tự nhiên đầu tiên
Vd: nhập n = 5 S = 1 2 + 2 2 + 3 2 + 4 2 + 5 2 = 55
4 Viết chương trình tính tích n số tự nhiên đầu tiên ( n! : đọc n giai thừa)
5 Viết chương trình nhập một số nguyên n, tìm tất cả các ước của số n
6 Viết chương trình nhập vào số N rồi kiểm tra số đó có phải là số nguyên tố không
7 Viết chương trình nhập vào n số nguyên, xuất ra số số nguyên tố trong dãy số vừa nhập
8 Viết chương trình nhập vào số N rồi phân tích số N ra thừa số nguyên tố
9 Viết chương trình nhập vào N số nguyên rồi xuất ra: Số số chẵn, số số lẻ
10 Viết chương trình nhập vào điểm của N môn học (kiểu số thực), xuất ra DTB các môn học
(DTB bằng tổng điểm các môn chia cho số môn học, không tính hệ số)
Trang 2Program Tong_nghich_dao;
Var i,n:integer; s: real;
Begin
WriteLN('CHUONG TRINH TINH
TONG S = 1 + 1/2 + 1/3 + 1/4 + + 1/n ');
Write('Nhap n = '); Readln(n);
For i:=1 to n do s:=s+1/i ;
Write('Tong can tim la: ',s:8:1);
Readln;
End
Program Tong_nghich_dao_cac_so_le;
Var i,n:integer; s: real;
Begin
WriteLN('CHUONG TINH TINH
TONG S = 1 + 1/3 + 1/5 + + 1/2n-1 ');
Write('Nhap n = '); Readln(n);
For i:=1 to n do s:=s+1/(2*i-1) ;
Write('Tong can tim la: ',s:8:1);
Readln;
End
Program TongBinhphuong;
Var i,n:integer; s: longint;
Begin
Write('Nhap n = '); Readln(n);
For i:=1 to n do s:=s+i*i;
Write('Tong can tim la: ',s);
Readln;
End
Program Tinhgiaithua;
Var i,n:integer; gt: longint;
Begin
writeln('CHUONG TRINH TINH N! =
1.2.3.4.5.6 n');
Write('Nhap n = '); Readln(n); gt:=1;
For i:=1 to n do GT:=GT*i;
Write('Ket qua can tim la: ',gt); Readln;
End
Program Tim_uoc_cua_mot_so;
Var i,n:longint;
Begin
Write('Nhap so n = '); readln(n);
Writeln('Cac uoc cua ',n,' la: ');
For i:=1 to n do
if n mod i = 0 then write(i,' ; ');
end
Program Kiem_tra_so_nguyen_to;
Var i,n:longint;
Begin
Write('Nhap so n = ');readln(n);
If n<=1 then write(n,' khong phai la so nguyen nguyen to ') else
Begin i:=2;
while n mod i <>0 do i:=i+1;
If n=i then write(n,' la so nguyen to') else write(n,' ko phai la so nguyen to'); end; readln;
end
Program Demsonguyentotrongdayso;
Var n,i,j,dem:integer;
a:array[1 50] of integer;
Begin Write('Nhap n = ');readln(n);
For i:=1 to n do Begin
write('a[',i,']= ');readln(a[i]);
If a[i]>1 then Begin j:=2;
while (a[i] mod j<>0) do j:=j+1;
if a[i] = j then dem:=dem+1;
end; end;
write('Trong ',n,' so ban nhap co ',dem,'
so nguyen to'); readln;
end
Program Phantichra_thua_so_nguyen_to;
Var n,i:word;
Begin Write('Nhap so n = '); readln(n);
i:=2; write(n,' = ');
While i<n do if n mod i = 0 then Begin
write(i,'.') ; n:=n div i;
end else i:=i+1;
write(i); readln;
end
Program Dem_so_chan_so_le;
Var i,n,demchan,demle:word;
a:array[1 100] of word;
Begin Write('Nhap n = ');readln(n);
For i:=1 to n do Begin
Write('a[',i,']=');readln(a[i]);
if a[i] mod 2 = 0 then demchan:=demchan+1 else demle:=demle+1; end;
write('Trong ',n,' so ban nhap co ', demchan,' so chan,',demle,' so le');
readln;
End