Динамический массив - Pascal (80214)
Формулировка задачи:
Составит программу, в которой вводится размер массива (одномерный). Выделить память, отсортировать элементы массива по убыванию. Освободить память.
Сделайте пожалуйста через динамический массив, заранее спасибо
Решение задачи: «Динамический массив»
textual
Листинг программы
var
a: array of Integer;
n, i: Integer;
begin
Randomize;
Write('N: '); Read(n);
SetLength(a,n);
for i:=0 to n-1 do a[i]:=Random(100);
Write('A ='); for i:=0 to n-1 do Write(' ',a[i]); WriteLn;
{ отсортировать любимым способом }
Write('A''='); for i:=0 to n-1 do Write(' ',a[i]); WriteLn;
SetLength(a,0); { не обязательно }
end.
Объяснение кода листинга программы
- Объявляется переменная a как динамический массив целых чисел.
- Объявляются переменные n и i как целые числа.
- Генерируется случайное начальное значение последовательности псевдослучайных чисел.
- Пользователю выводится сообщение
N:и вводится значение переменной n. - Массиву a выделяется память под n элементов с помощью функции SetLength.
- В цикле от 0 до n-1 каждому элементу массива a присваивается случайное значение от 0 до 100 с помощью функции Random.
- Выводится сообщение
A =и последовательно выводятся элементы массива a. - Выводится комментарий о сортировке
отсортировать любимым способом. - Выводится сообщение
A''=и последовательно выводятся элементы массива a. - Память для массива a освобождается с помощью функции SetLength с параметром 0.