Создайте программу в паскале формирования исходного одномерного целочисленного массива случайным образом в файле input.txt. отсортированный исходный массив по возрастанию и по убыванию записывается в виде двух таблиц в файл output.txt
Const nn= 50; var a:array[1..nn] of integer; i,j,k,n: integer; f:Text; begin Write('Введите количество чисел: '); Read(n); { Формирование входного файла } Randomize; Assign(f,'input.txt'); Rewrite(f); for i:=1 to n do begin k:=Random(50); Writeln(f,k) end; Close(f); { Чтение входного файла в массив и вывод } Reset(f); Writeln('Элементы массива'); for i:=1 to n do begin Readln(f,a[i]); Write(a[i]:3) end; Close(f); Writeln; { Сортировка по возрастанию методом пузырька } for i := 1 to n-1 do for j := 1 to n-i do if a[j] > a[j+1] then begin k := a[j]; a[j] := a[j+1]; a[j+1] := k end; { Вывод в файл в порядке возрастания } Assign(f,'output.txt'); Rewrite(f); for i:=1 to n do Write(f,a[i]:3); Writeln(f); { Вывод в файл в порядке убывания } for i:=n downto 1 do Write(f,a[i]:3); Writeln(f); Close(f) end.
Program odnomernui_massuv; uses crt; var A:array[1..100] of integer; n,i,j,imin: byte; buf:integer; begin write('Размер массива от 1 до 100 n='); readln(n); //ручной ввод массива writeLn('Вводим элементы массива A:'); for I:=1 TO N do begin write('A[',i,']='); readLn (A[i]); end; //Вывод массива до изменения writeLn('исходный массив A:'); for i:=1 to N do write (A[i]:5); writeLn; //поиск минимума в серии imin:=1; for i:=1 to N do if A[i]<A[imin] then imin:=i; writeln('imin=',imin); if imin>n-2 then write('Элементов для сортировки нет!') else begin for i:=imin+1 to n-1 do for j:=i+1 to n do if A[i]<A[j] then begin buf:=A[i]; A[i]:=A[j]; A[j]:=buf; end; writeln('Элементы после минимального отсортированы по убыванию:'); for i:=1 to n do write(A[i],' '); end; end.
nn= 50;
var
a:array[1..nn] of integer;
i,j,k,n: integer;
f:Text;
begin
Write('Введите количество чисел: '); Read(n);
{ Формирование входного файла }
Randomize;
Assign(f,'input.txt'); Rewrite(f);
for i:=1 to n do
begin k:=Random(50); Writeln(f,k) end;
Close(f);
{ Чтение входного файла в массив и вывод }
Reset(f);
Writeln('Элементы массива');
for i:=1 to n do
begin Readln(f,a[i]); Write(a[i]:3) end;
Close(f);
Writeln;
{ Сортировка по возрастанию методом пузырька }
for i := 1 to n-1 do
for j := 1 to n-i do
if a[j] > a[j+1] then
begin k := a[j]; a[j] := a[j+1]; a[j+1] := k end;
{ Вывод в файл в порядке возрастания }
Assign(f,'output.txt');
Rewrite(f);
for i:=1 to n do Write(f,a[i]:3);
Writeln(f);
{ Вывод в файл в порядке убывания }
for i:=n downto 1 do Write(f,a[i]:3);
Writeln(f);
Close(f)
end.
uses crt;
var A:array[1..100] of integer;
n,i,j,imin: byte;
buf:integer;
begin
write('Размер массива от 1 до 100 n=');
readln(n);
//ручной ввод массива
writeLn('Вводим элементы массива A:');
for I:=1 TO N do
begin
write('A[',i,']=');
readLn (A[i]);
end;
//Вывод массива до изменения
writeLn('исходный массив A:');
for i:=1 to N do
write (A[i]:5);
writeLn;
//поиск минимума в серии
imin:=1;
for i:=1 to N do
if A[i]<A[imin] then
imin:=i;
writeln('imin=',imin);
if imin>n-2 then write('Элементов для сортировки нет!')
else
begin
for i:=imin+1 to n-1 do
for j:=i+1 to n do
if A[i]<A[j] then
begin
buf:=A[i];
A[i]:=A[j];
A[j]:=buf;
end;
writeln('Элементы после минимального отсортированы по убыванию:');
for i:=1 to n do
write(A[i],' ');
end;
end.
проверь