# data[].attributes.body
Bài 1
Có thể dùng câu lệnh While...do thay For...do
Vd tính tổng các số từ 1 đến 10
For do:
S:=0;
For i:=1 to 10 do S:=S+i;
While do:
S:=0; i:=0;
While i<10 do
Begin
i:=i+1;
S:=S+i;
End;
Bài2
Program baitap_2
Uses crt;
Var cha, con, nam: Interger;
Begin
Writeln('Nhap tuoi cha');
Readln(cha);
Writeln('Nhap tuoi con');
Readln(con);
nam:=0;
While(con<>cha/2) do
Begin
cha:=cha+1;
con:=con+1;
nam:=nam+1;
End;
Writeln('Sau ', nam', nam thi tuoi cua cha gap doi tuoi cua con');
Readln;
End.

# data[].attributes.body
11a2_Trần Ngọc Mỹ Quỳnh

Câu 1:

Có thể sử dụng câu lệnh while-do để thay cho câu lệnh for-do được. Vì ta có thể sử dụng các câu lệnh giúp thoát khỏi vòng lặp, hoặc có thể sử dụng những câu lệnh để thoát lặp.

Ví dụ:

Program Tongtien;

Uses crt;

var S:real;

a,n: integer;

begin

clrscr;

writeln('hay nhap gia tri cua a ');

readln(a);

S:=1.0/a;

while N<=</span>100 do

begin

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

N:=N+1;

end;

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

readln;

end.

Câu 2: bài 7/sgk_51

Program bai7;

uses crt;

var tuoicha,tuoicon,nam:integer;

begin

clrscr;

writeln('nhap vao tuoi cha va tuoi con ');

readln(tuoicha,tuoicon);

nam:=0;

while(tuoicha<>tuoicon*2) do

begin

tcha:=tuoicha+1;

tcon:=tuoicon+1;

nam:=nam+1;

end;

writeln('sau ',nam,' nam nua thi tuoi cha gap 2 lan tuoi con');

readln;

end.

Câu3:

program baitap_3;

uses crt;

var K, max, min, N, a: longint;

dem: byte; 17 If K>max then max:=K; 23

begin

clrscr;

Write('Nhap N: '); Readln (N); dem:=0; max:=-1;     min:=10;a:=0;

While (NK1) or (N>100000) do

begin

Write('N khong thoa, hay nhap lai: ');

Read (N);

end; writeln('So N la: ',N);

While N>0 do

begin

K: N mod 10;

dem: =dem+1;

a:= a*10+K;

If K>max then max:=K;

If K<min then min:=K;

N:=N div 10;

end; Writeln('N la so co', dem, chu so');

Writeln('so dao cua N la ',a);

Writeln('Chu so lon nhat la :' max,' Chu so nho nhat la :' min);

Readln;

end.

# data[].attributes.body
program bai3;
uses crt;
var n,b,k,dem,min,max:Integer;
begin
clrscr();
write('nhap n '); readln(n);
while (n>100000) or  (n<1) do begin
writeln('nhap lai n ') ; readln(n); end;
min:=10; max:=-1; k:=0; b:=0; dem:=0;
while N>0 do begin
k:=n mod 10;
B:=b*10+k;
dem:=dem+1;
if k>max then max:=k;
if k<min then min:=k;
N:= n div 10;
end;
writeln('số đảo: ',B); writeln('số lớn nhất: ', max);
writeln('số nhỏ nhất: ',min); writeln('N có' , dem , 'chữ số');
readln;
end.
................................
program bai2 ;
uses crt;
var tuoicha,tuoicon,nam:integer;
begin
clrscr;
write('nhap tuoi cha: '); readln(tuoicha);
write('nhap tuoi con: '); readln(tuoicon);
nam:=0;
while(tuoicha<>tuoicon*2) do
begin
tuoicha:=tuoicha+1;
tuoicon:=tuoicon+1;
nam:=nam+1;
end;
writeln('sau ',nam,' nam nua thi tuoi cha gap 2 lan tuoi con');
readln;
end.
........................
Câu 1
Có thể thay thế while do cho for do.
-For i:=1 to 1000 do S:=S+i*2;
-while n<=1000 đó begin
S:=S+ i*2;
i:=i +1;

# data[].attributes.body
bài 2
program tuoi_cha_con;

uses crt;

var tuoicha, tuoicon, nam: longint;

begin

clrscr;

write('Nhap tuoi cha va con(tuoicha-tuoicon>=25) ;

readln(tuoicha,tuoicon); nam:= 0;

while tuoicha<>2*tuoicon do begin

tuoicha:= tuoicha + tuoicon := tuoicon + 1; nam:= nam +1;

end;

writeln ( ' Sau ' , nam, ' nam, tuoi cha gap doi tuoi con' );

readln

End.

Xem thêm tại: https://loigiaihay.com/cau-7-trang-51-sgk-tin-hoc-11-c155a25167.html#ixzz7F5XN54jw

# data[].attributes.body
program tinhtuoi;
uses crt;
Var cha,con,nam:Integer;
begin
WriteLn('Nhap tuoi Cha');
readln(Cha);
writeln('Nhap tuoi Con');
readln(Con);
nam:=0;
while (Con<>Cha/2) do
begin
Cha:=Cha+1;
Con:=Con+1;
nam:=nam+1;
end;
writeln('Sau ',nam,' nam thi cha gap doi tuoi con');
readln;
end.

# data[].attributes.body
Bài 1: Có thể sử dụng câu lệnh while-do thay thế câu lệnh for-do.
Vd: Viết chương trình tìm các ước của số N.
Program bai_tap_1;
Var i,N:integer;
Begin
Readln(N);
i:=0;
While i<N do
Begin
i:=i+1;
If N mod i=0 then writeln(i,' là ước của N');
End;
End.
Bài 2:
program bai_tap_2;
uses Crt;
var  b,c,d:Integer;
a:real;
begin
clrscr();
Write('Nhập tuổi bố:'); ReadLn(b);
Write('nhập tuổi con:'); readln(c);
a:=b/c;
d:=b-c;
if a<2 then
begin
WriteLn(c-d,' năm trước tuổi bố gấp đôi tuổi con');
end;
if a=2 then WriteLn('hiện nay bố đã gấp đôi tuổi con');
if a>2 then
begin
WriteLn('Sau ',d-c,' năm nữa ba gấp đôi tuổi con');
end;
end.
Bài 3:
program bai_tap_3;
uses Crt;
var  i,a,x,N,max,min:Integer;
begin
clrscr();
i:=0;max:=-1;min:=10;x:=0;
Write('nhập N:'); ReadLn(N);
while (N>100000) and (N<0) do
begin
Write('nhập không đúng, nhập lại'); ReadLn(N);
end;
while N>0 do
begin
a:= N mod 10;
i:=i+1;
x:=x*10+a;
if a>max then max:=a;
if a<min then min:=a;
N:=N div 10
end;
WriteLn('số lơn nhất là:', max);
WriteLn('số bé nhất là:', min);
WriteLn('số nghịch đảo là:', x);
WriteLn('N có ',i,' số hạng')
end.

# data[].attributes.body
bt1
s:=0;i:=0;
while i<10 do
begin
i:=i+1;
s:=s+i;
end

program bt2;
uses crt;
var cha,con,nam:interger;
begin
writeln(‘nhap tuoi cha:’);
readln(cha);
writeln(‘nhap tuoi con:’);
readln(con);
nam:=0;
while (con<>cha/2)do
begin
cha:=cha+1;
con:=con +1;
nam:=nam+1;
end,
writeln(‘sau,’nam’, thi tuoi cha gap doi tuoi con’);
readln
end.

# data[].attributes.body
program baitap3; uses crt;
var M, max, min, H, a: longint;
dem: byte;
begin
clrscr;
write ( ' Nhap H:   ' ); readln(H);dem:=0; max:=-1;min:=10;a:=0
while (H<1) or ( H>100000) do
begin
write (' H khong thoa, hay nhap lai:  ');
read (N);
end; writeln(' So N la:   ', H);
while H>0 do
begin
M:=H mod 10;
dem:=dem +1;
a:=a*10+M;
if M>max then max:=M;
if M<min then min :=M;
H:=H div 10;
end; writeln (' H la so co ', dem,' chu so ');
writeln (' so dao cua H la ', a );
writeln ( ' Chu so lon nhat la : ' , max, ' Chu so nho nhat la : ' , min );
readln; end.

# data[].attributes.body
program bai3;
uses crt;
var N,B,i:real;
begin
writeln('Nhap N');
readln(N);
while (N>100000) or (N<1) do
begin
writeln('Nhap lai N');
readln(N);
end;
writeln(N:0:0,'thoa dieu kien');
readln;
end.

# data[].attributes.attachment_caption
Khúc Write ở dòng số 6 em sửa lại là Write('Nhap tuoi cha va con( Cha hon con tu 25 tuoi tro len): '); ạ

# data[].attributes.body
program bt2;
uses crt;
Var cha,con,nam:Integer;
begin
WriteLn('Nhap tuoi cha');
readln(cha);
writeln('Nhap tuoi con');
readln(con);
nam:=0;
while (con<>cha/2) do
begin
cha:=cha+1;
con:=con+1;
nam:=nam+1;
end;
writeln('Sau ',nam,' nam thi tuoi cua cha gap doi tuoi cua con');
readln;
end.

# data[].attributes.body
có thể dùng câu lệnh while...do thay cho for...do
vd: tính tổng các số từ 1 đến 10 FOR DO
s:=0;
For i:=1 to 10 do S:=S+1;
WHILE DO
s:=0;i:=0;
while i<10 do
Begin
i:=i+1;
S:=S+1;
End;

# data[].attributes.body
program bai2;
uses crt;
var cha,con,nam:integer;
begin
clrscr;
writeln('nhap tuoi cha va tuoi con ');
readln(cha,con);
      while(cha<>con*2) do
begin
     cha:=cha+1;
     con:=con+1;
     nam:=nam+1;
end;
writeln(nam,' nam sau thi tuoi cha gap doi tuoi con');
writeln( ' luc do, so tuoi cua cha va con lan luot la: ', cha,',', con)
readln;
end.

# data[].attributes.body
Có thể sử dụng câu lệnh while-do để thay cho câu lệnh for-do được. Vì ta có thể sử dụng các câu lệnh giúp thoát khỏi vòng lặp, hoặc có thể sử dụng những câu lệnh để thoát lặp.

program Tong_1a;
uses crt;
var S:real;
    a,n: integer;
begin
clrscr;
writeln ('hay nhap gia tri cua a ');
	readln(a);
	S:=1.0/a;
	while N<=100 do
	begin
	    S:=S+1.0/(a+N);
	    N:=N+1;
end;
writeln('Tong S la:',S:8:4);
readln;
end.

# data[].attributes.body
S:=0;
while N<1000 do
begin
S:=S+ 1/N;
N:=N+1;
end;

# data[].attributes.body
program tuoi;
uses crt;
Var Cha,Con,nam:Integer;
begin
WriteLn('Nhap tuoi Cha');
readln(Cha);
writeln('Nhap tuoi Con');
readln(Con);
nam:=0;
while (Con<>Cha/2) do
begin
Cha:=Cha+1;
Con:=Con+1;
nam:=nam+1;
end;
writeln('Sau ',nam,' nam thi cha gap doi tuoi con');
readln;
end.

# data[].attributes.body
Có thể dùng câu lệnh while...do thay for...do
Vd: tính tổng các số từ 1 đến 10
FOR DO:
S:=0;
For i:=1 to 10 do S:=S+i;
WHILE DO:
S:=0; i:=0;
While i < 10 do
Begin
i:=i+1;
S:=S+i;
End;

# data[].attributes.body
N:=1; S:=0;
while 1/N >=0.001 do
begin
S:= S+1/N;
N:=N+1;
end;

# data[].attributes.body
program duong11a2;
uses crt;
var s:real;
n:integer;
begin
clrscr;
s:=0; n:=1;
while 1/n>0.0001 do
begin
s:=s+1/n;
n:=n+1;
end;
write(‘S= ‘,s:2:3);
readln;
end

# data[].attributes.body
S:=0;
N:=1;
While 1/N >= 0.001 do
Begin
S:= S+1/N;
N:= N+1;
End;

# data[].attributes.body
S:=0; N:=1;
While 1/N>=0.001 do
Begin
S:=S+1/N;
N=N+1;
End,

# data[].attributes.body
s:=0;
N:=1;
while 1/N >= 0.001 do
begin
s:=s + 1/N;
N:= N + 1;
end;

# data[].attributes.body
S:=0; N:=1;
While 1/N>=0,001 do S:=S+1/N;
N:=N+1;

# data[].attributes.body
N:=1; S:=0;
while 1/N >=0.001 do
begin
S:= S+1/N;
N:=N+1;
end;

# data[].attributes.body
S:=0; N:=1;
while 1/N>=0.001 do
begin
S:= S+1/N;
N:=N+1;
end;

# data[].attributes.body
s:=0; N:=1
while 1/n >= 0,001 do
begin
s:= s+1/N;
N:= N+1;
end.

# data[].attributes.body
S:=0; N:=1;
while 1/(N) <= 0.001 do
begin
S:=S+1/(N);
N:= N+1;
end,

# data[].attributes.body
var S:real;
N:Integer;
begin
S:=0;
N:=0;
while (1/N>=0.001) do
begin
N:=N+1;
S:=S+1/N;
end;
WriteLn('tong S la:',S:2:4);
readln;
end.

# data[].attributes.body
S:=0; N:=1;
While 1/N >= 0.001 do
begin
S:= S+1/N;
N:=N+1;
end;

# data[].attributes.body
S:= 0;
n:= 1;
while 1/n >= 0.001 do
being
S:=S+ 1/n;
n:=n+1;
end;

# data[].attributes.body
s:=0;N=1;
While 1/N >=0.001 do
begin
S:= S+1/N;
N;=N+1:
end;