S:=1 for i:=1 to 10 do S:=S+i
A.58 B.57 C.56 D.55
Cần lời giải cụ thể
Câu 1 : HÃy tìm lỗi sai trong các câu lệnh dưới đây và sửa lỗi sai cho đúng :
a, For i:=5 to 15 do ; S:=S+1;
b, i:=30; while i>20 then i:=i-2;
c, B:=0; While B<=100 do B=B+2;
d, For i:=1 to 10 do ; a:=a+1;
e, S:=5.5; while s<20.5 do S=S*2;
f, S:=0; i:=1 While i<=100 do begin If i mod 2 =0 then S:=S+1; i:=i+1;end;
làm gấp cho em vs ạ
a) Lỗi: Dư dấu ; sau từ do
b) Lỗi: While i>20 then (sửa: While i>20 do)
c) Lỗi: B=B+2; (sửa: B:=B+2;)
d) Lỗi: dư dấu ; sau từ do
e) Lỗi: S=S*2; (sửa: S:=S*2;)
f) Lỗi: i:=1 (sửa: i:=1;)
Các câu lệnh và khai báo sau trong pascal đúng hay sai?hãy chỉ ra lỗi sai nếu có
a) For i:=1 to 10; do x:=x+1;
b) For i: =1 to 10 do writeln('A')
c) Y:=5; while Y:=10 do Y:=Y+20;
d) s :=0; n :=0; ; while s<= 10 do n :=n+1;s:=s+n;
e) for i =100 to 20 do x :=x+2;
f) for i :=2 to 20 do x:=x+1;
a) 2 lỗi
- thiếu do
- vòng lặp for tuyệt đối không có ;
b: sau writeln('A') không có chấm phẩy
c: sai chỗ y:=10
phải là y=10 mới đúng
d: sử dụng 2 chấm phẩy là sai
sau while do nếu có từ 2 lệnh trở lên phải bao bọc trong begin end
e: thiếu dấu : sau i, đi từ 100 tới 20 là sai,
phải là for i:=100 downto 20 do mới đúng
f: không sai
Em hãy xác định các câu lệnh sau đây đúng hay sai? Nếu sai hãy giải thích tại sao?
a) For i:=150 to 1 do writeln(‘A’);
b) For i:=1.5 to 30.5 do writeln(‘B’);
c) S:=0;n:=0; While S<=20 do begin n:=n+1;S:=S+n; end
d) Var X: array[10..1] of integer;
e) Var X: array[1,5...20,5] of integer;
f) Var X: array[1..30] of integer;
a: Sai bởi chỉ số đầu lớn hơn chỉ số cuối
b: Sai vì chỉ số đầu, chỉ số cuối là số thực
c: Sai vì chỗ end thiếu chấm phẩy
d: Sai vì chỉ số đầu lớn hơn chỉ số cuối
e: Sai vì chỉ số đầu và chỉ số cuối là số thực
d: Đúng
cho biết số vòng lặp và giá trị của biến s sau khi thực hiện đoạn chương trình: a) S:=0;
For i:=2 to 8 do S :=S+i
b) S:=0; n:=1;
For i:=1 to 6 do
Begin
S:=S+n;
n:=n+i;
end;
c) S:=2;
For i:=1 to 10 do
If(i mod 2)=0 then S:=S+i;
d) S:=0; i:= 1,5;
While S<7 do S:=S+i;
e) S:=0; i:=1;
While i<9 do
Begin
S:=S+i;
i:=i+2;
End;
f) S:=2; i:=1;
While i<= 10 do
Begin
If (i mod 2) then S:=S+i;
i:=i+1;
End;
để tính tổng s=2+4+6 ... +n;
em chọn lệnh:
a) 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) <> 2 then s:=s+1;
c) for i:=1 to n do s:=s+1;
d) for i:=1 to n do if (i mod 2) = 1 then s:=s+1;
mn giúp em với ạ, cảm ơn mn nhiều
Câu 1 : Câu lệnh lặp sau sẻ tính ra tổng S bằng bao nhiêu
For i:= 1 to 5 do S:= S+i
Câu 2: Câu lệnh pascal nào sau đây đúng
a) For i:=100 to 1 do writeln(‘A’); c) For i:=1.5 to 10.5do writeln(‘A’);
b) For i= 1 to 10 do; writeln(‘A’); d) For i:= 1 to 10 do writeln(‘A’);
Câu 1: S=15
Câu 2:
a) Sai vì giá trị đầu lớn hơn giá trị cuối mà không dùng downto
b) Sai vì thiếu dấu : và có chấm phẩy sau vòng lặp for
c) Sai vì giá trị đầu và giá trị cuối là số thực
d) Đúng
Phần I: Phần trắc nghiệm
Câu 1: Cho đoạn lệnh: S:= 0; For i:=1 to 10 do S:=S+1; kết quả S sau khi thực hiện là bao nhiêu?
A. 10 B. 55 C. 1 D. 50
Câu 2: Khi kết thúc câu lệnh For i:= 1 to 10 do <câu lệnh>; giá trị của biến i nhận được là bao nhiêu?
A. 1 B. 10 C. 11 D. Tất cả đều sai.
Câu 3: Cho đoạn lệnh x:= -5; While (abs(x) >= 5) do x:= x+1; lệnh x:= x+1 được lặp lại bao nhiêu lần?
A. Lặp vô hạn B. 5 lần C. 1 lần. D. Chưa biết
Câu 4: Lệnh lặp nào sau đây là đúng cú pháp:
A. For i:=1 two 10 do S:=S+i; B. For i:=1 to 10 do S=S+i;
C. For i=1 to 10 do S:=S+i; D. For i:=1 downto -10 do S:=S+i;
Câu 5: Điền vào dấu (…): Mảng một chiều là một dãy (… )các phần tử có cùng kiểu
A. Thông tin B. hữu hạn C. Kiểu D. Giá trị
Câu 6: Cấu trúc lặp thường có mấy dạng?
A. 3 B. 4 C. 2 D. 1
Câu 7: Để tính tổng S=1+22+32+…+n2 em sẽ sử dụng lệnh lặp nào là hợp lí nhất?
A. While – do B. For – do C. If – Then D. Cả A và B.
Câu 8: Khai báo sau đây thì mảng có tối đa bao nhiêu phần tử? Var a:array [1..10] of byte;
A. 8 B. 9 C. 11 D. 10
Câu 9: Để lưu trữ dãy số nguyên A1, A2, …, A50 thì khai báo nào sau đây là đúng và tốn ít bộ nhớ?
A. Var A:=array[1..50] of real; B. Var A:array[1..50] of word;
C. Var A:array[1..50] of Integer; D. Var A:array[1..50] of Real;
Câu 10: Khi chạy chương trình :
Var A:array[1..10] of integer;
i, S : integer;
Begin A[1]:= 3; A[2]:= -1; A[3]:= -4;
S:= 0;
For i:=1 to 3 do If A[i] < 0 then S:=S+A[i];
Write(S);
End.
Kết quả in ra giá trị của S là:
A. 2 B. 3 C. 4 D. -5
Câu 11: Hãy cho biết kết quả đưa ra màn hình của chương trình sau:
Var x, i: byte;
BEGIN X:=0; i:=0; While i<17 do begin i:=i+2; x:= x+i; end; writeln(‘x= ’, x); END.
A. x= 72 B. x= 90 C. x= 91 D. 56
Câu 12: Cho khai báo Var A: array[1..10] of integer; Để đưa giá trị phần tử thứ 3 của mảng ra màn hình thực hiện câu lệnh nào?
A.Read(A<3>); B. Write(‘A[3]’); C. Writeln(A[3]); D. Readln(A[3]);
Câu 13: Các khai báo sau, khai báo nào là đúng?
A. Var A:array[1....n] of byte; B. Var A = array[1..10] of real;
C. Var A:array[10. .-10] of boolean; D. Var A : array[‘a’..’z’] of real;
Câu 14: Cho khai báo Var S:Array[1..5] of word; S có thể lưu trữ dãy số nào sau đây.
A. 300 3 5 4 5 B. 1 3 6 C. Cả A và B D. 1 5 3 2 4 3
Câu 15: Cho khai báo sau: Var A, B : array[1..20] of integer; Giả sử giá trị A[i] và B[i] (i nhận giá trị từ 1 đến 20) đã được xác định. Xét đoạn chương trình:
d:=0; for i:=1 to 20 do If A[i] = B[i] then d:=d+1; writeln(d);
Đoạn chương trình trên thực hiện công việc gì?
A. Đếm số phần tử của A khác các phần tử của B B. Đếm số phần tử khác nhau của A và B
C. Đếm số cặp phần tử tương ứng khác nhau của A và B D. Đếm số cặp phần tử tương ứng bằng nhau của A và B
Câu 16: Cho khai báo a : array[1..16] of integer ;
Câu lệnh nào dưới đây sẽ in ra tất cả các phần tử của mảng trên?
A. for k := 1 to 16 do write(a[k]); B. for k := 16 downto 0 do write(a[k]);
for k:= 0 to 15 do write(a[k]); D. for k := 16 down to 0 write(a[k]);
Câu 17: Var a : array[0..50] of real ;
k := 0 ; for i := 1 to 50 do if a[i] < a[k] then k := i ;
Đoạn chương trình trên thực hiện công việc gì dưới đây ?
A.Tìm phần tử nhỏ nhất trong mảng; B. Tìm phần tử lớn nhất trong mảng;
C.Tìm chỉ số của phần tử lớn nhất trong mảng; D. Tìm chỉ số của phần tử nhỏ nhất trong mảng;
Câu 18: Var a : array[1..10] of integer ;
Phương án nào dưới đây chỉ phần tử thứ 10 của mảng ?
A. a[10] B. a(10) C. a(9) D. a[9]
Câu 19: Có Var A:Array[‘a’..’z’] of byte; Để tham chiếu đến phần tử thứ 4 của mảng, ta viết thế nào?
A. A<’d’> B. A(4) C. A[‘d’] D. A[4]
Câu 20: Cho dãy số gồm 4 số thực, 5 số nguyên. Em có thể khai báo một mảng một chiều gồm 20 phần tử kiểu thực để lưu trữ dãy số hay không?
A. Có B. Đáp án khác. C. Vừa có vừa không D. Không
Câu 21: S:=0; For i:=1 to N do if T[i] mod 2 <> 0 then S:=S+T[i]; Đoạn lệnh trên thực hiện công việc gì?
A. Tìm tổng giá trị các phần tử của mảng T B. Tìm tổng giá trị các số chẵn trong mảng T
C. Tìm tổng giá trị các số lẻ trong mảng T D. Cả A, B, C đều đúng.
Câu 1: A
Câu 2: B
Câu 3: C
Câu 4: A
Câu 5: B
Câu 6: C
Câu 7: D
1. Câu lệnh pascal nào dưới đây dùng để tính tổng S= 1+2+3+...+50
A.For i:=1 to 50 do;S:=S+i;
C. For i:=1 to 50 do S:=S+i;
B.For i:=1 to 50 do S:=S+i;
D. For i:=1 to 50 do S:=S+1;
Câu B với C giống nhau mà bạn
Cả hai câu B,C đều đúng nhé.
Câu 17: Sau khi thực hiện đoạn chương trình sau:
S:=10;
For i:=1 to 4 do S:=S+i;
Giá trị của biến S bằng bao nhiêu?
A. 20 B. 14 C. 10 D. 0