Hãy tìm hiểu thuật toán sau đây và cho biết khi thực hiện thuật toán máy tính sẽ thực hiện bao nhiêu vòng lặp? Khi kết thúc, giá trị của S bằng bao nhiêu? Viết chương trình paseal thể hiện thuật toán đó: Bước 1: s:=o; i:=1 Bước 2: nếu S>=5 thì chuyển tới bước 4 Bước 3: s:=s+i và quay lại bước 2 Bước 4: thông bạo s và kết thúc thuật toán
2 câu trả lời
Máy sẽ thực hiện 6 vòng lặp:
s=0+1=1
s=1+1=5
s=2+1=3
s=3+1=4
s=4+1=5
s=5+1=6
vậy kết quả cuối s=6
chương trình :
program ct;
uses crt;
var s,i:integer;
begin
clrscr;
s:=0; i:=1;
while s<=5 do s:=s+i;
writeln('s=',s);
readln
end.
- Giá trị ban đầu S = 0, i = 1
+ S = 0 < 5 ⇒ S = S + i = 0 + 1 = 1 ⇒ i = i + 1 = 1 + 1 = 2
+ S = 1 < 5 ⇒ S = S + i = 1 + 2 = 3 ⇒ i = i + 1 = 2 + 1 = 3
+ S = 3 < 5 ⇒ S = S + i = 3 + 3 = 6 ⇒ i = i + 1 = 3 + 1 = 4
+ S = 6 >= 5 ⇒ Kết thúc
⇒ Lặp 3 vòng, giá trị S = 6
- Viết chương trình :
uses crt;
var i, S : byte;
begin
clrscr;
S := 0; i := 1;
while S < 5 do
begin S := S + i; i := i + 1;
end; write('S = ', S);
readln
end.