Напишите программу, которая сортирует массив ненулевых целых чисел в порядке возрастания...

0 голосов
54 просмотров

Напишите программу, которая сортирует массив ненулевых целых чисел в порядке возрастания (неубывания). Размер массива заранее неизвестен. Исходные данные записаны в файл input.txt , отсортированный массив нужно вывести в файл output.txt .

Входные данные
Все элементы массива записаны по одному в каждой строке входного файла input.txt . Ввод завершается числом 0.

Выходные данные
Программа должна вывести в файл output.txt все элементы отсортированного массива в одной строке, разделив их пробелами.

Примеры
входные данные
5
1
-4
-2
3
0
выходные данные
-4 -2 1 3 5


Информатика (51 баллов) | 54 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

Program n1;
type z = array of integer;
var a: z;
i,n,j,buf,t: integer;
f: text;
begin
assign(f,'input.txt');
reset(f);
n:=1;
t:=0;
while true do
begin
readln(f,t);
if(t<>0) then
begin
setlength(a,n);
a[n-1]:=t;
end else break;
n:=n+1;
end;
close(f);
for i:=0 to n-3 do
for j:=i+1 to n-2 do
if a[i]>a[j] then begin
buf:=a[i];
a[i]:=a[j];
a[j]:=buf;
end;
assign(f,'output.txt');
rewrite(f);
for i:=0 to n-2 do write(f,a[i],' ');
close(f);
end.

(149k баллов)
0

Спасибо

0

Слушай тут такая проблема с временем выполнения

0

Сможешь уменьшить время выполнения программы