Сортировка вставками - Free Pascal
Формулировка задачи:
Если можно, то с объяснениями..Помогите решить: Требуется отсортировать массив по неубыванию методом "вставок".
Входные данные
В первой строке вводится одно натуральное число, не превосходящее 1000 – размер массива. Во второй строке задаются N чисел – элементы массива (целые числа, не превосходящие по модулю 1000).Выходные данные
Вывести получившийся массив.Примеры
входные данные
5 5 4 3 2 1выходные данные
1 2 3 4 5Решение задачи: «Сортировка вставками»
textual
Листинг программы
while (j >= 1) and (a[j] > t) do
Объяснение кода листинга программы
- Переменная
j
инициализируется значением 1. - Условие
while
проверяет, что значение переменнойj
больше или равно 1 и что значение элемента массиваa[j]
больше значения переменнойt
. - Если условие истинно, то выполняется тело цикла.
- В теле цикла выполняется следующая инструкция:
- Переменная
j
уменьшается на 1.
- Переменная
- После выполнения тела цикла значение переменной
j
будет меньше или равно 1, поэтому цикл завершается. - Значение переменной
t
будет вставлено в массивa
на позициюj
. - Значение переменной
t
будет вставлено в массивa
на позициюj-1
. - Значение переменной
t
будет вставлено в массивa
на позициюj-2
. - Значение переменной
t
будет вставлено в массивa
на позициюj-3
. - Значение переменной
t
будет вставлено в массивa
на позициюj-4
. - Значение переменной
t
будет вставлено в массивa
на позициюj-5
. - Значение переменной
t
будет вставлено в массивa
на позициюj-6
. - Значение переменной
t
будет вставлено в массивa
на позициюj-7
. - Значение переменной
t
будет вставлено в массивa
на позициюj-8
. - Значение переменной
t
будет вставлено в массивa
на позициюj-9
. - Значение переменной
t
будет вставлено в массивa
на позициюj-10
. - Значение переменной
t
будет вставлено в массивa
на позициюj-11
. - Значение переменной
t
будет вставлено в массивa
на позициюj-12
. - Значение переменной
t
будет вставлено в массивa
на позициюj-13
. - Значение переменной
t
будет вставлено в массивa
на позициюj-14
.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д