S = 0 + 2*1 + 2*2 + 2*3 = 2 + 4 + 6 = 12 -> A
Đoạn chương trình trên tính tổng của 3 số chẵn liên tiếp nhau, bắt đầu từ 2.
Thứ tự tính toán như sau:
i=1: s=0+2*1=2i=2: s=2+2*2=6i=3: s=6+2*3=12Vậy kết quả in lên màn hình là A. 12.
S = 0 + 2*1 + 2*2 + 2*3 = 2 + 4 + 6 = 12 -> A
Đoạn chương trình trên tính tổng của 3 số chẵn liên tiếp nhau, bắt đầu từ 2.
Thứ tự tính toán như sau:
i=1: s=0+2*1=2i=2: s=2+2*2=6i=3: s=6+2*3=12Vậy kết quả in lên màn hình là A. 12.
Câu 1: Cho S và i là biến nguyên. Khi chạy đoạn chương trình:
s:=0;
for i:=1 to 5 do s := s+i;
writeln(s);
Kết quả in lên màn hình là của s là :
A.11 B. 55 C. 101 D.15
Câu 2: Câu lệnh nào sau đây lặp vô hạn lần | |
a) s:=5; i:=0; While i<=s do s:=s + 1; | c) s:=5; i:=1; While i<=s do i:=i + 1; |
b) s:=5; i:=1; While i> s do i:=i + 1; | d) s:=0; i:=0; While i<=n do begin if (i mod2)=1 Then S:=S + i; Else i:=i+1; End; |
Câu 3: : Em hãy viết chương trình tìm số nhỏ nhất trong N số được nhập vào từ bàn phím
Câu 4: Viết chương trình nhập vào dãy số N phần tử, tính tổng dãy số, in ra màn hình dãy số vừa nhập và kết quả của tổng.
cho s và i là biến nguyên khi chạy đoạn chương trình s:=0,for i:= 1 to 3 do s:=s+3*i,writeln (s)
2, Kêt quả của câu lệnh For i:=1 to 20 do if i mod 3=2 then write(i:3); *
A.In ra các số lẻ từ 1 đến 20; B. In ra các số chẵn từ 1 đến 20; C. In ra các số chia hết cho 3 từ 1 đến 20; D. In ra các số chia hết cho 3 dư 2 từ 1 đến 20;
3, Trong câu lệnh lặp For i:=3 to 15 do s:=s+i; Có bao nhiêu vòng lặp? *
A. 15; B. 12; C. 13 D. 3;
4, Cho k,m,n nhận giá trị tương ứng 4,5,6; kết thúc câu lệnh sau:X:=n; If ((x mod 2=0)) or (x<=5) then x:=m*k else x:=m div k; thì x có giá trị là ? *
A. 1 B. 0 C. 5. D. 20 5, Cho biết đoạn chương trình Pascal sau đây chương trình thực hiện bao nhiêu vòng lặp?s:=0; n:=0; while s<=5 do n:= n+1;s:= s+n; * A. 3 B. 6 C. 10 D. kết quả khác 6, Cho a,b,c lần lượt nhận giá trị 10,30,20 . Hỏi sau đoạn chương trình Begin X:=a; If x>a then x:=a; if x>b then x:=b;if x>c then x:=c;end; x có giá trị là? * A. 20 B. 10 C. 30 D. Cả ba đáp án đều sai. 7, Cho x:=7; kết thúc câu lệnh If ((x mod 3=0)) and (x<=8) then x:=x+10; thì x có giá trị là ? * A. 8 B. 10 C. 17 D. 7 8, Cho s và i là biến nguyên. Khi chạy đoạn chương trình s := 1; for i:=1 to 5 do s := s+i; Kết quả in lên màn hình là của s là ? * A. 15 B. 16 C. 11 D. 22 9, Cho biết đoạn chương trình Pascal sau đây, khi kết thúc giá trị của S bằng bao nhiêu? S:=0; n:=0;while S<=3 do begin n:= n+1;S:= s+n; end; * A. 15 B. 10 C. 6 D. 3Câu 1: Sau khi thực hiện chưng trình pascal sau đây, biến S có giá trị là bao nhiêu ? Var x : integer;
Begin
S:=0
For i:=1 to 10 do
If ( i mod 2) = 0 then S:=S+i;
Readln;
End
A.10 B. 20 C. 30 D. 40
Câu 2: Khi thực hiện đoạn chương trình sau, kết quả trên màn hình là:
So:=1;
While so<10 do Begin
Write (so : %);
So:= So +2;
End.
Cho S và i là biến nguyên. Khi chạy chương trình sau S nhận được giá trị bao nhiêu
s:=0
For i:=1 to 5 do s:=s+i;
writeln(s);
a) 16
b) 9
c) 7
d) 0
Cho S và i là biến nguyên. Khi chạy chương trình sau S nhận được giá trị bao nhiêu
s:=0
For i:=1 to 5 do s:=s+i;
writeln(s);
a) 11
b) 55
c) 101
d) 15
I Trắc Nghiệm
1) Khi thực hiện đoạn chương trình sau:
n:=1; T:=50; while n>20 do Begin n:=n+5;T:=T-n
end;
Hãy cho biết giá trị của biến T
A)16 B)15 C)14 D)17
2) Trong câu lệnh khai báo mảng, phát biểu nào sau đây đúng?
A) Cả 3 ý trên
B) Chỉ số đầu và số cuối là 2 số nguyên
C) Kiểu dữ liệu có integer
D) Chỉ số đầu và chỉ số cuối
3) Khai báo biến mảng A: array [1...7] of real; for i= 1 to 5 do; Readln (A[i]) để gắn giá trị cho các phần tử trong biến A từ bàn phím, ta sẽ nhận được bao nhiêu giá trị
A)7 B)5 C)6 D)4
4) Trong câu lệnh lặp for i=1 to do J:=J+2 writeln (J); khi kết thúc câu lệnh trên, câu lệnh writeln (J) được thực hiện bao nhiêu lần
A) Không thực hiện C) 10 lần
B) 1 lần D) 5 lần
5) Trong pascal, câu lệnh nào sau đây là đúng?
A) for i:= 1 to 10 do writeln (`A');
B) for i:= 4 to 10 do writeln(`A');
C) for i to 10 do writeln (`A')
D)for i:= 1 to 10 do writeln (`A')
6) Trong pascal, câu lệnh nào sau đây đúng?
A) n:=2, while n<5 do writeln (`A')
B) i:=0; 5:=1; while S<10 do writeln (S);
while S<10 do S:= S+i; i=i+1;
C) S:=1,
D) Cả A và B đúng
7) Giả sử biến A có 5 phần tử và giá trị các phần tử lần lượt là 1,4,7,2,6. Khi thực hiện câu lệnh sau
Tb:= 0; for i:= 1 to 5 do
Tb: Tb + A(i)
Giá trị trung bình là bao nhiêu?
A)18 C)21
B)21 D)22
8) Cho đoạn chương trình J:=0; for i:= 1 to S sau khi thực hiện chương trình trên giá trị của biến i bằng bao nhiêu?
A)12 C)42
B)22 D)15
II Tự Luận
1) Viết cú pháp câu lệnh lặp với số lần chưa biết trước. Nêu hoạt động của câu lệnh
2) Viết chương trình nhập điểm kiểm tra học kì môn tin cho N học sinh và in ra màn hình với N và điểm kiểm tra được nhập từ bàn phím ( Sử sụng biến mảng).
TỔ TOÁN-TIN MÔN: TIN HỌC 8
I. TRẮC NGHIỆM
Câu 1: Lệnh lặp nào sau đây là đúng?
a) For <biến đếm>= <giá trị đầu>to<giá trị cuối>do<câu lệnh>;
b) For <biến đếm>:= <giá trị đầu>to<giá trị cuối>do<câu lệnh>;
c) For <biến đếm>:= <giá trị cuối>to<giá trị đầu>do<câu lệnh>;
d) For <biến đếm>: <giá trị đầu>to<câu lệnh> do <giá trị cuối>;
Câu 2: Câu lệnh pascal nào sau đây là hợp lệ?
a) For i:=10 to 1 do write(‘A’); c) For i:=1.5 to 10 do write(‘A’);
b) For i= 1 to 10 do write(‘A’); d) For i:= 1 to 10 do write(‘A’);
Câu 3: Vòng lặp while ..do là vòng lặp:
a) Biết trước số lần lặp c) Chưa biết trước số lần lặp
b) Biết trước số lần <=100 d) Biết trước số lần là >=100
Câu 4: Câu lệnh lặp while…do có dạng đúng là:
a) While <đk> do; <câu lệnh>; c) While <đk> <câu lệnh> do;
b) While <câu lệnh> do <đk>; d) While <đk>do <câu lệnh>;
Câu 5: Cho S và i là biến nguyên. Khi chạy đoạn chương trình :
s:=0; for i:=1 to 5 do s := s+i;
Kết quả cuối cùng của s là : a) 11 b) 55 c) 101 d) 15
Câu 6: Trong đọan chương trình pascal sau đây x có giá trị là mấy
Begin x:= 3 ; If (45 mod 3) =0 then x:= x +2;
If x > 10 then x := x +10 ; End.
a) 3 b) 5 c) 15 d) 10
Câu 7: Trong chương trình pascal sau đây:
var a, b :integer;
s,cv :real ;
begin a:= 10; b:= 5; s:= a*b ; cv:= (a +b ) * 2 ; end.
Biến s và cv có giá trị là mấy:
a) s = 10 ; cv = 5 ; c) s= 30 ; cv = 50 ;
b) s = 50 ; cv = 40 ; d) s = 50 ; cv = 30 ;
Câu 8: Sau khi thực hiện đoạn chương trình j:= 0; for i:= 1 to 3 do j:=j+2; thì giá trị in ra màn hình là? a) 4 b) 6 c) 8 d) 10
Câu 9: Để tính tổng S=1+3 + 5 + … + n; em chọn đoạn lệnh: |
|
a) for i:=1 to n do if ( i mod 2)=0 then S:=S + 1/i; |
c) for i:=1 to n do if (i mod 2) <> 0 then S:=S+i; |
b) for i:=1 to n do if ( i mod 2)<>0 then S:=S + 1/i |
d) for i:=1 to n do if ( i mod 2)=0 then S:=S + i; |
Câu 10: Để tính tổng S=1/2+1/4 + 1/6 + … +1/ n; em chọn đoạn |
|
a) for i:=1 to n do if ( i mod 2)=0 then S:=S + 1/i; |
c) for i:=1 to n do if (i mod 2) <> 0 then S:=S+i; |
b) for i:=1 to n do if ( i mod 2)=0 then S:=S – 1/i |
d) for i:=1 to n do if ( i mod 2)=0 then S:=S + i |
Câu 11: Để đếm các số lẻ <= n ; em chọn đoạn lệnh: |
|
a) for i:=1 to n do if ( i mod 2)< >0 then S:=S + 1; |
c) for i:=1 to n do if (i mod 2) =0 then S:=S + 1; |
b) for i:=1 to n do if ( i mod 2)=0 then S:=S + i ; |
d) for i:=1 to n do if ( i mod 2)=0 then S:=S + i; |
Câu 12: Câu lệnh nào sau đây lặp vô hạn lần |
|
a) s:=5; i:=0; While i<=s do s:=s + 1; |
a) s:=5; i:=1; While i<=s do i:=i + 1; |
b) s:=5; i:=1; While i> s do i:=i + 1; |
d) s:=0; i:=0; While i<=s do S:=S + i; |
Câu 13: Chọn khai báo hơp lệ |
|
a) Var a: array[1..n] of real; |
c) Var a: array[1:n] of real; |
b) Var a: array[1..100] of real; |
d) Var a: array[1…n] of real; |
Câu 14: Chọn khai báo hơp lệ |
|
a) Const n=5; Var a,b: array[1..n] of real; |
c) Var n: real; Var a,b: array[1:n] of real; |
b) Var a,b: array[100..1] of real; |
d) Var a:array[1.5.10] of real; |
Câu 15: Thực hiện đoạn lệnh:
a[1]:=2; a[2]:=3; t:=a[1]+a[2]+1;
Giá trị của t là: a) t=1 b) t=3 c) t=2 d) t=6
II. TỰ LUẬN
1) Nhập số tự nhiên n từ bàn phím, in ra các số chẵn từ 1 đến n và tổng của chúng?
2) Nhập số tự nhiên n từ bàn phím, in ra các số chia hết cho 5 từ 1 đến n và tổng của chúng?
3) Tính trung bình cộng của n số nguyên nhập từ bàn phím?
4) Tìm số lớn nhất trong dãy n số nguyên nhập từ bàn phím?
5) Sửa lỗi cho các câu lệnh Pascal sau:
a. For i=1 to 10 do s= s+i; b. While i:=5 do s:= s+i;
c. Var a:array[100..1] of real; d. If a>b; then max:=a;
6) Kẻ bảng thể hiện các câu lệnh lặp sau:
a. s:=0; b. s:=0; i:=10;
For i:= 1 to 20 do While i>0 do
If I mod 5=0 then s:=s+i; begin s:=s+i; i:=i-1end;
7) Sau khi thực hiện các đoạn chương trình sau, giá trị của biến s và biến i bằng bao nhiêu?
a. s:=1; b. s:=0; i:=0;
For i:= 1 to 5 do s:=s*i; While i<5 do begin i:=i+1; s:=s+i end;
8) Cho biết kiểu dữ liệu của biến a và b trong các đoạn chương trình sau:
a. a:= 0; b:=0;
while a<5 do begin a:=a+1; b:=b+1/a end;
b. b:=1;
For a:= 1 to 5 do b:=b*a;
1) Trong đoạn lệnh sau đây, chương trình đã thực hiện bao nhiêu vòng lặp?
S:=0; i:=0;
While S<=20 do
Begin
S:=S+i; i:=i+1;
end;
a) 2 b) 4 c) 8 d) vô hạn
2) Trong đoạn lệnh sau đây, chương trình đã thực hiện bao nhiêu vòng lặp?
x:=0;
For i:=1 to 5 do x:=x+3;
a) 1 b) 3 c) 5 d) 15
3) Sau khi thực hiện đoạn chương trình sau, giá trị của biến x bằng bao nhiêu?
x:=0;
For i:=1 to 5 do x:=x+3;
a) 1 b) 3 c) 5 d) 15
4) Sau khi thực hiện đoạn chương trình sau, giá trị của biến S bằng bao nhiêu?
S:=0; i:=0;
While S<=20 do
Begin S:=S+i; i:=i+1; end;
a) 18 b) 21 c) 25 d) 52
5) Đoạn chương trình sau đây đã mắc phải lỗi gì?
a:=5;
While a<=6 do Writeln(‘A’);
a) Sử dụng sai cú pháp lệnh While ... do
b) Cho biết trước số lần lặp
c) Không cho biết trước số lần lặp
d) Lặp vô hạn
6) Trong ngôn ngữ lập trình Pascal, câu lệnh For ... do là lệnh:
a) Không cho biết trước số lần lặp
b) Cho biết trước số lần lặp
c) Biết trước hay không biết trước số lần lặp đều sử dụng được
d) Cả a, b, c đều sai
7) Trong ngôn ngữ lập trình Pascal, câu lệnh lặp được dùng để thể hiện:
a) Cấu trúc lặp c) Cấu trúc điều kiện
b) Cấu trúc rẽ nhánh d) Cấu trúc mảng
8) Trong ngôn ngữ lập trình Pascal, lệnh lặp với số lần chưa biết trước là câu lệnh:
a) For ... do c) If ... then ...
b) While ... do d) If ... then ... else...
9) Trong ngôn ngữ lập trình Pascal, câu lệnh nào sau đây hợp lệ?
a) For i:=10 to 1 do Writeln(‘A’);
b) For i:=10.5 to 1.5 do Writeln(‘A’);
c) For i=1 to 10 do Writeln(‘A’);
d) For i:=1 to 10 do Writeln(‘A’);
10) Trong ngôn ngữ lập trình Pascal, câu lệnh nào sau đây hợp lệ?
a) x:=10; While x:=10 do x:=x+5;
b) x=10; While x=10 do x=x+5;
c) x:=10; While x=10 do x:=x+5;
d) x=10; While x:=10 do x=x+5;