Câu 1: Cho một vài ví dụ về hoạt động được thực hiện lặp đi lặp lại nhiều lần trong cuộc sống hàng ngày
– Các ngày trong tuần các em đều lặp đi lặp lại hoạt động buổi sáng đến trường và buổi trưa trở về nhà
– Các em học bài thì phải đọc đi đọc lại nhiều lần cho đến khi thuộc bài.
– Mặt trời luôn mọc đằng đông lặn đằng tây.
Câu 2: Hãy cho biết tác dụng câu lệnh lặp với số lần biết trước .
Câu lệnh lặp với số lần lặp biết trước chỉ thị cho máy tính thực hiện một lệnh hoặc một nhóm lệnh với số lần đã được xác định từ trước.
Trong câu lệnh lặp với số lần cho trước, điều kiện là giá trị của một biến đếm có giá trị nguyên đã đạt được giá trị lớn nhất hay chưa.
Trong câu lệnh lặp với số lần biết trước, câu lệnh được thực hiện ít nhất một lần, sau đó kiểm tra điều kiện.
Câu 3: Khi thực hiện câu lệnh lặp, máy tính kiểm tra một điều kiện.
Với lệnh lặp :For < biến đếm>:= < giá trị đầu> to < giá trị cuối> do < câu lệnh> của Pascal, điều kiện cần phải kiểm tra là gì?
Khi thực hiện, ban đầu biến đếm sẽ nhận giá trị đầu, sau mỗi vòng lặp, biến đếm sẽ tự động tăng thêm một đơn vị cho đến khi bằng giá trị cuối.
Câu 4: Sau khi thực hiện đoạn chương trình sau, giá trị của biến j là bao nhiêu ?
j:= 0;
for i:= 0 to 5 do j:=j+2;
Ta có 6 vòng lặp từ i = 0 tới i = 5
Ta có tổng cấp số cộng có công bội d = 2
i = 0 ta có j = 2
Advertisements (Quảng cáo)
i = 1 ta có j = 4
i = 2 ta có j = 6
i = 3 ta có j = 8
i = 4 ta có j = 10
i = 5 ta có j = 12
Vậy sau khi thực hiện vòng lặp j = 12
Câu 5: Các câu lệnh Pascal sau có hợp lệ không, vì sao?
Mã PHP:
a) for i:= 100 to 1 do writeln(‘A’);
b) for i:= 1.5 to 10.5 do writeln(‘A’);
c) for i= 1 to 10 do writeln(‘A’);
d) for i:=1 to 10 do; writeln(‘A’);
e) var x :real; begin for x:=1 to 10 do writeln(‘A’); end.
Advertisements (Quảng cáo)
Lời giải :
a) Không hợp lệ vì giá trị đầu lớn hơn giá trị cuối
b) Không hợp lệ vì giá trị đầu và giá trị cuối không là các giá trị nguyên
c) Không hợp lệ vì lệnh gán phải kí hiệu là := chứ không phải =
d) Không hợp lệ vì sau từ khóa do không được phép có dấu chấm phấy ;
e) Không hợp lệ, vì không x phải khai báo số nguyên !
Câu 6: Hãy mô tả thuật toán để tính tổng sau đây:
\(A = {1 \over {1.3}} + {1 \over {2.4}} + {1 \over {3.5}} + \ldots + {1 \over {n\left( {n + 2} \right)}}\)
Lời giải :
Giải thuật tính tổng trên là :
– Bước 1:Nhập số n
– Bước 2:S<-0; i<-0;
– Bước 3:i<-i+1;
– Bước 4:Nếu i <= n thì S:=S+1/(i*(i+2)) nghĩa là công vào S = S+1/(i*(i+2)) và quay lại
– Bước 5.Ngược lại thông báo kết quả và kết thúc thuật toán.
Câu 7: Hãy sửa lại chương trình ở Ví dụ 5 để tính tổng các số tự nhiên chia hết cho 3 không vượt quá N cho trước
program Tinh_tong;
var N,i:integer;
S:longint;
begin
write(‘Nhap so N = ‘);
readln(N);
S:= 0;
for i:= 1 to N do
if (i mod 3 = 0) then
begin
S:= S+i;
end;
writeln(‘Tong cua’, N, ‘so tư nhien dau tien S = ‘, S);
readln;
end.