Разработка алгоритмов и программ с использованием методов внутренней сортировки - Pascal ABC
Формулировка задачи:
Составьте программу с использованием указанного метода сортировки.
Необходимо сформировать одномерный массив, элементы которого определяются выражением an=2n. Элементы полученного массива отсортировать по убыванию методом вставки.
Решение задачи: «Разработка алгоритмов и программ с использованием методов внутренней сортировки»
textual
Листинг программы
var a:array[0..100] of integer; n,i,j,b:integer; begin write('Введите размер массива т 2 до 100 n='); readln(n); writeln('Исходный массив'); for i:=1 to n do begin a[i]:=2*i; write(a[i]:4); end; writeln; a[0]:=2*n+1; for j:=2 to n do begin i:=j; while a[i]>a[i-1] do begin b:=a[i]; a[i]:=a[i-1]; a[i-1]:=b; i:=i-1; end; end; writeln('Сортировка по убыванию методом вставки'); for i:=1 to n do write(a[i]:4) end.
Объяснение кода листинга программы
- Создаётся переменная
a
типаarray[0..100] of integer;
, которая будет использоваться для хранения отсортированного массива. - Задаётся переменная
n
типаinteger
, которая будет использоваться для хранения размера массива. - Задаются переменные
i
,j
иb
типаinteger
, которые будут использоваться для выполнения различных операций. - Выводится сообщение с просьбой ввести размер массива от 2 до 100.
- В цикле
for i:=1 to n do
заполняется исходный массив значениями, удваивающими размер индекса массива. - Задаётся значение
a[0]
как удвоенный размерn+1
. - В цикле
for j:=2 to n do
выполняется сортировка массива методом вставки. - В цикле
while a[i]>a[i-1] do
происходит сравнение текущей и предыдущей ячеек массива и, если текущая больше предыдущей, они меняются местами. - После завершения цикла
while
выполняется шагi:=i-1
, который уменьшает значение индекса на единицу. - Выводится отсортированный массив.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д