Добавил:
Источник:
Uman
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:01 семестр / Задачи на Paskal / Array. Массивы / 03
.txt В массиве поставить элемент с минимальным значением перед элементом с максимальным значением.
*******************************************************program anc;
type mas=array[1..100]of real;
var a:mas;
i,n,nmax,nmin:integer;
max,min,r:real;
begin
writeln('vvedyte kol-vo elementov');
readln(n);
for i:=1 to n do begin
write('vvedite ',i,' element: ');
read(a[i]);
end;
writeln('Massiv: ');
for i:=1 to n do
begin
write(a[i],' ');
end;
writeln;
max:=a[1]; nmin:=1;
min:=a[1]; nmax:=1;
for i:=1 to n do begin
if a[i]>max then begin
max:=a[i];
nmax:=i; end;
if a[i]<min then begin
min:=a[i];
nmin:=i; end;
end;
write(' min - ',nmin,' element and ');
write(' max - ',nmax,' element ');
writeln;
if nmin<nmax then begin
for i:=nmin to (nmax-2) do begin
r:=a[i]; a[i]:=a[i+1];
a[i+1]:=r;
end; end
else begin
for i:=nmin downto nmax+1 do begin
r:=a[i-1]; a[i-1]:=a[i]; a[i]:=r;
end;
end;
writeln('novyy Massiv: ');
for i:=1 to n do
begin
write(a[i],' ');
end;
writeln;
end.
*******************************************************program anc;
type mas=array[1..100]of real;
var a:mas;
i,n,nmax,nmin:integer;
max,min,r:real;
begin
writeln('vvedyte kol-vo elementov');
readln(n);
for i:=1 to n do begin
write('vvedite ',i,' element: ');
read(a[i]);
end;
writeln('Massiv: ');
for i:=1 to n do
begin
write(a[i],' ');
end;
writeln;
max:=a[1]; nmin:=1;
min:=a[1]; nmax:=1;
for i:=1 to n do begin
if a[i]>max then begin
max:=a[i];
nmax:=i; end;
if a[i]<min then begin
min:=a[i];
nmin:=i; end;
end;
write(' min - ',nmin,' element and ');
write(' max - ',nmax,' element ');
writeln;
if nmin<nmax then begin
for i:=nmin to (nmax-2) do begin
r:=a[i]; a[i]:=a[i+1];
a[i+1]:=r;
end; end
else begin
for i:=nmin downto nmax+1 do begin
r:=a[i-1]; a[i-1]:=a[i]; a[i]:=r;
end;
end;
writeln('novyy Massiv: ');
for i:=1 to n do
begin
write(a[i],' ');
end;
writeln;
end.