Nhập vào một dãy n số thực. In dãy vừa nhập ra màn hình. Tìm và in giá trị của phần tử max, min và vị trí của chúng trong mảng, sau đó đổi chỗ 2 phần tử này cho nhau. In ra dãy sau khi đổi chỗ.(mình làm trên pascal nha mội người) giúp vsss
2 câu trả lời
Uses crt;
Var i: integer;
n: integer;
max: integer;
min: integer;
a: array[1..100] of integer;
Begin
Clrscr;
Write(‘ Nhap do dai cua day so, n= ‘);
Readln(n);
Writeln(‘Nhap cac phan tu cua day so: ‘);
For i:= 1 to n do
Begin
Write(‘a[‘, i, ‘]= ‘);
Readln(a[i]);
End;
max:= a[1];
min:= a[1];
For i:= 2 to n do
Begin
If max < a[i] then max:= a[i];
If min > a[i] then min:= a[i];
End;
Writeln(‘So lon nhat la max= ‘, max); Writeln(‘So nho nhat la min= ‘, min);
Readln
End.
code pascal:
program bai_tap;
uses crt;
var A:ARRAY[1..100000] of real;
max,min,tg:real;
i,n,vtmax,vtmin:longint;
begin
clrscr;
writeln('nhap n=');
read(n);
for i:=1 to n do read(A[i]);
max:=A[1];
for i:=1 to n do
if max < A[i] then
begin
max:=A[i];
vtmax:=i;
end;
min:=A[1];
for i:=1 to n do
if min > A[i] then
begin
min:=A[i];
vtmin:=i;
end;
begin
tg:=A[vtmax];
A[vtmax]:=A[vtmin];
A[vtmin]:=tg;
end;
writeln('Gia tri cua max ',max:3:0);
writeln('Gia tri cua min ',min:3:0);
for i:=1 to n do write(A[i],' ');
readln;
readln;
end.