👤
a fost răspuns

Se considera tabloul A [1..n] de numere intregi,n<=100.Sa se scrie un program care efectueaza interschimbarea elementului maxim cu elementul minim.
PASCAL


Răspuns :

program schimbare_vector;
type vector = array[1..100] of integer;

var v:vector;
n,i,minpoz,maxpoz,min,max,temp:integer;
{minpoz -- pozitia minimului; maxpoz- pozitia maximului}

begin

{citesc n}
repeat
write('n=');readln(n);
until (n<=100);

for i:=1 to n do
begin
write('v[',i,']=');readln(v[i]); end;

min:=v[1]; minpoz:=1;
max:=v[1]; maxpoz:=1; 

{determinare max si min}
for i:=2 to n do
begin
if(max<v[i]) then begin  
                                    max:=v[i];
                                    maxpoz:=i;
                             end;
if(min>v[i]) then begin
                                    min:=v[i];
                                    minpoz:=i;
                              end;
end;

{schimbare max cu min}
temp:=v[minpoz];
v[minpoz]:=v[maxpoz];
v[maxpoz]:=temp;

{afisaj}
for i:=1 to n do
write(v[i],' ');


readln;
end.