Hãy nhập câu hỏi của bạn vào đây, nếu là tài khoản VIP, bạn sẽ được ưu tiên trả lời.
a) Thừa dấu hai chấm trong điều kiện;
b) Thiếu dấu hai chấm trong câu lệnh gán;
c) Thiếu các từ khóa begin và end trước và sau các lệnh n:=n+1; S:=S+n, do đó vòng lặp trở thành vô tận.
uses crt;
var s,n:integer;
begin
clrscr;
s:=0;
n:=0;
while s<=50 do
begin
n:=n+1;
s:=s+n;
end;
writeln(n);
writeln(s);
readln;
end.
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
1.While...do :lặp với số lần chưa biết trước
For....do : lặp với số lần đã biết trước
2.Sau khi thực hiện đoạn chương trình thì S=15
Câu lệnh lặp sẽ được thực hiện khi giá trị của biến S là lớn hơn 0. Trong quá trình lặp, giá trị của biến i sẽ được tăng lên mỗi lần lặp cho đến khi i đạt đến giá trị n. Trong cùng mỗi lần lặp, giá trị của biến J sẽ được cập nhật bằng cách cộng thêm i^2, sau đó biến S sẽ giảm đi giá trị của i.
Khi vòng lặp kết thúc, chương trình sẽ in ra màn hình tổng S, tức là giá trị cuối cùng của biến J.
Với câu lệnh lặp như sau:
J:=0;
i:=0;
While S > 0 Do
i:=i+1;
J:=J+i^2;
S:=S-i;
End;
Write(J);
Ví dụ, nếu ta gán S=5, thì chương trình sẽ tính tổng của các số bình phương từ 1^2 đến 5^2 và in ra giá trị đó, tức là 1^2 + 2^2 + 3^2 + 4^2 + 5^2 = 55.
Có 3 vòng lặp
Giá trị cuối cùng của s=2
k cho mk nha
a) Vòng lặp while thực hiện 5 vòng lặp:
Vòng thứ nhất s=0 => n=1, s=1;
Vòng thứ hai s=1 => n=2, s=3;
Vòng thứ ba s=3 => n=3, s=6;
Vòng thứ tư s=6 => n=4, s=10;
Vòng thứ năm s=10 => n=5, s=15 kết thúc vòng lặp.
=> Vòng while sẽ kết thúc khi giá trị của s thay đổi không đáp ứng điều kiện tiếp tục vòng.
b) Vòng lặp while thực hiện vô hạn lần.
=> Giá trị của s luôn thỏa mãn điều kiện tiếp tục vòng while vì trong vòng while không thấy sự thay đổi của biến s (s luôn bằng 0 bé hơn 10).