Вставить число 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!
. - Если положительный элемент найден, выводим измененный массив на экран.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д