Описать процедуру SortInc(A,N) (SortDec(A,N)), выполняющую сортировку по возрастанию (убыванию) массива - Turbo Pascal
Формулировка задачи:
Описать процедуру SortInc(A,N) (SortDec(A,N)), выполняющую сортировку по возрастанию (убыванию) массива A из N вещественных чисел. Массив A является входным и выходным параметром. С помощью этой процедуры отсортировать массивы A, B, C размера NA, NB, NC соответственно.
Решение задачи: «Описать процедуру SortInc(A,N) (SortDec(A,N)), выполняющую сортировку по возрастанию (убыванию) массива»
textual
Листинг программы
uses crt; const nmax=20; type mas=array[1..nmax] of integer; var a,b,c:mas; n:integer; procedure invect(var x:mas;n:integer); var i:integer; begin for i:=1 to n do x[i]:=n+random(21); end; procedure outvect(var x:mas;n:integer); var i:integer; begin for i:=1 to n do write(x[i]:4); end; procedure sortinc(var x:mas;n:integer); var i,j,tmp:integer; begin for j:=1 to n-1 do for i:=1 to n-1 do if x[i]>x[i+1] then begin tmp:=x[i]; x[i]:=a[i+1]; x[i+1]:=tmp; end; end; procedure sortdec(var x:mas;n:integer); var i,j,tmp:integer; begin for j:=1 to n-1 do for i:=1 to n-1 do if x[i]<x[i+1] then begin tmp:=x[i]; x[i]:=x[i+1]; x[i+1]:=tmp; end; end; begin clrscr; writeln('Массив А :'); invect(a,5); outvect(a,5); writeln; writeln('По возрастанию :'); sortinc(a,5); {аналогично для массивов В С } outvect(a,5); writeln; writeln('По убыванию :'); sortdec(a,5); outvect(a,5); writeln; readkey; end.
Объяснение кода листинга программы
- В начале объявляются все необходимые переменные: nmax, mas, a, b, c, n, x, i, j, tmp.
- Затем идет описание процедуры invect, которая случайным образом изменяет значения элементов массива x.
- После этого описывается процедура outvect, которая выводит значения элементов массива x.
- Далее идут процедуры sortinc и sortdec, которые выполняют сортировку массива x по возрастанию и убыванию соответственно.
- Затем происходит очистка экрана и вывод массива x до и после выполнения каждой из процедур.
- В конце программы запрашивается нажатие клавиши.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д