Câu 3 trang 51 SGK Tin học 11

Đề bài

Có thể dùng câu lệnh while-do để thay cho câu lệnh for-do được không? Nếu được, hãy thực hiện điều đỏ với chương trình.

Lời giải chi tiết

Có thể thay thế đoạn chương trình chứa câu lệnh for-do (dạng lặp tiến) for <biến đếm>:= <giá trị đầu> to <giá trị cuối> do <câu lệnh>;

bằng đoạn chương trình chứa câu lệnh while-do như sau:

i:= <giá trị đầu>;

while <i< = <giá trị cuối> do

begin

<câu lệnh>;

<tăng i một đơn vị>,

end;

Như vậy, chương trình tính Tong_1a viết bằng lệnh for-do

program Tong_1a;

uses crt;

var S:real,

a, N: integer;

begin

clrscr;

write('Hay nhap gia tri a vao!'); readln(a);

S:= 1.0/a;

for N:=1 to 100 do S: = S+1.0/ (a+N);

writeln('Tong S la:', S:8:4); readln;

End.

được viết lại bằng lệnh while-do như sau:

Program Tong_la;

uses crt;

var S:real;

a, N: integer;

Begin

clrscr;

write('Hay nhap gia tri a vao!'); readln(a);

S:= 1.0/a;

N:= 1;

while N<=100 do begin

S:= s + 1.0/(a+N);

N:= N + 1; end;

writeln('Tong s la:', S:8:4); readln;

End.