Вставить число X после последнего положительного элемента массива B из n элементов - Free Pascal
Формулировка задачи:
Вставить число X после последнего положительного элемента массива B из n элементов(n<=20)
Решение задачи: «Вставить число X после последнего положительного элемента массива B из n элементов»
textual
Листинг программы
var ar: Array Of Single; x: Single; i, n: Byte; found: Boolean; begin repeat Write('Input array length: '); ReadLn(n); until (n in [1..20]); SetLength(ar, n + 1); Randomize(); Write('Original array:'); for i := 0 to n - 1 do begin ar[i] := Random * 50 - 25; Write(' ', ar[i]:0:3); end; WriteLn; Write('Input x: '); ReadLn(x); i := n - 1; repeat found := (ar[i] > 0); if (found) then ar[i + 1] := x else begin ar[i + 1] := ar[i]; Dec(i); end; until ((i = 0) Or (found)); if (Not found) then Write('No one positive!') else begin Write('Modified array:'); for i := 0 to n do Write(' ', ar[i]:0:3); end; end.
Объяснение кода листинга программы
- Объявлены переменные: — ar: Array Of Single (массив из single, размер не указан); — x: Single (число типа single); — i, n: Byte (целые числа типа byte); — found: Boolean (флаг типа boolean).
- Входим в цикл повторения, пока n не будет в диапазоне от 1 до 20.
- Устанавливаем размер массива ar равным n+1.
- Инициализируем генератор случайных чисел.
- Выводим исходный массив на экран.
- Считываем число x с помощью функции ReadLn.
- Устанавливаем i равным n-1.
- Входим во внутренний цикл, пока не найдем положительный элемент или i не станет равным 0.
- Проверяем, является ли элемент ar[i] положительным.
- Если элемент положительный, то присваиваем значение x элементу ar[i+1].
- Если элемент отрицательный, то присваиваем ему значение ar[i].
- Уменьшаем i на 1.
- Повторяем шаги 9-12 до тех пор, пока не найдем положительный элемент или i не станет равным 0.
- Если положительный элемент не найден, выводим сообщение
No one positive!
. - Если положительный элемент найден, выводим измененный массив на экран.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д