hoạt động của 2 cấu trúc for-do và while-do khác nhau như thế nào?giúp e với ạ :(
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.
uses crt;
var a,vtmax,vtmin:array[1..100]of integer;
n,i,max,min,dem,t,dem1,t1,dem2,t2,dem3,t3,dem4,t4,k:integer;
begin
clrscr;
write('Nhap n='); readln(n);
for i:=1 to n do
begin
write('A[',i,']='); readln(a[i]);
end;
max:=a[1];
for i:=1 to n do
if max<a[i] then max:=a[i];
writeln('So lon nhat trong day la: ',max);
dem:=0;
t:=0;
for i:=1 to n do
if max=a[i] then
begin
inc(dem);
t:=t+a[i];
vtmax[dem]:=i;
end;
if dem>1 then
begin
writeln('Tong cac so max la: ',t);
writeln('Cac vi tri co so max la: ');
for i:=1 to dem do
write(vtmax[i]:4);
end;
min:=a[1];
for i:=1 to n do
if min>a[i] then min:=a[i];
writeln('So nho nhat trong day la: ',min);
dem1:=0;
t1:=0;
for i:=1 to n do
if min=a[i] then
begin
inc(dem1);
t1:=t1+a[i];
vtmin[dem1]:=i;
end;
if dem1>1 then
begin
writeln('Tong cac so min la: ',t1);
writeln('Cac vi tri co so min la: ');
for i:=1 to dem1 do
write(vtmin[i]:4);
end;
write('Nhap k='); readln(k);
dem2:=0;
t2:=0;
for i:=1 to n do
if (i mod 2=0) and (a[i] mod k=0) then
begin
dem2:=dem2+1;
t2:=t2+a[i];
end;
writeln('So phan tu o vi tri chan trong day la boi cua ',k,' la: ',dem2);
writeln('Tong cac so o vi tri chan trong day la boi cua ',k,' la: ',t2);
dem3:=0;
t3:=0;
for i:=1 to n do
if (i mod 2=1) and (k mod a[i]=0) then
begin
inc(dem3);
t3:=t3+a[i];
end;
writeln('So phan tu o vi tri le trong day la uoc cua ',k,' la: ',dem3);
writeln('Tong cac so o vi tri le trong day la uoc cua ',k,' la: ',t3);
dem4:=0;
t4:=0;
for i:=1 to n do
if (a[i]+k=1) or (a[i]=k+1) then
begin
inc(dem4);
t4:=t4+a[i];
end;
writeln('So phan tu la anh em cua ',k,' trong day la: ',dem4);
writeln('Tong cac phan tu la anh em cua ',k,' trong day la: ',t4);
readln;
end.
uses crt;
var x,y:integer;
begin
clrscr;
write('Nhap x='); readln(x);
write('Nhap y='); readln(y);
if x>y then writeln(x-y)
else writeln(x+y);
readln;
end.
uses crt;
var x,y:integer;
begin
clrscr;
write('Nhap x='); readln(x);
write('Nhap y='); readln(y);
if x>y then writeln(x-y)
else writeln(x+y);
readln;
end.
uses crt;
var st:string;
begin
clrscr;
write('Nhap xau:'); readln(st);
writeln('Xau do xuat theo chieu xuoi la: ',st);
readln;
end.
uses crt;
var a:array[1..100]of integer;
i,n,dem,t:integer;
begin
clrscr;
write('Nhap n='); readln(n);
for i:=1 to n do
begin
write('A[',i,']='); readln(a[i]);
end;
writeln('Cac so chan la: ');
dem:=0;
t:=0;
for i:=1 to n do
if a[i] mod 2=0 then
begin
write(a[i]:4);
t:=t+a[i];
inc(dem);
end;
writeln('Tong cac so chan la: ',t);
writeln('Trong day co ',dem,' so chan');
readln;
end.
uses crt;
var n,i,k,dem:integer;
a:array[1..100]of integer;
begin
clrscr;
write('Nhap n='); readln(n);
for i:=1 to n do
begin
write('A[',i,']='); readln(a[i]);
end;
dem:=0;
for i:=1 to n do
if a[i] mod 2=0 then inc(dem);
writeln('So phan tu chan trong day so la: ',dem);
write('Nhap so k='); readln(k);
kt:=0;
for i:=1 to n do
if a[i]=k then kt:=i;
if kt=0 then writeln('Khong co phan tu nao trong day bang ',k)
else writeln('Trong day co phan tu bang ',k);
readln;
end.
Hoạt động:
-Vòng lặp For: Khi thực hiện, biến đếm sẽ nhận giá trị là 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 thì dừng lại.
-Vòng lặp While:
+Bước 1: Máy thực hiện câu lệnh 1.
+Bước 2: Sau đó tính giá trị của biểu thức 1 , nếu giá trị của biểu thức 1 sai thì chương trình thoát ra khỏi vòng lặp. Nếu giá trị của biểu thức 1 đúng thì quay lại bước 1.
Cấu trúc
-Vòng lặp For:
for <biến đếm>:=<giá trị đầu> to <giá trị cuối> do <câu lệnh>;
Trong đó:
-For, to, do là các từ khóa
-Biến đếm thuộc kiểu dữ liệu số nguyên
-Giá trị đầu, giá trị cuối là các số nguyên
-Câu lệnh có thể là câu lệnh đơn hoặc câu lệnh kép
-Vòng lặp While:
While <điều kiện> do <câu lệnh>;