Как вывести элементы массива в обратном порядке без введения второго цикла ? - Turbo Pascal

Узнай цену своей работы

Формулировка задачи:

Задание 8.2 со стр. 137 книги «Паскаль для школьников», 2005 г. Ушаков, Юркова. Добавить в задание 8.1 новый цикл вывода элементов массива в обратном порядке (начиная с последнего). Попробуйте выполнить то же задание без введения второго цикла for. Вопрос: А как выполнить это же задание без введения второго цикла for?
Листинг программы
  1. Program Massiv2;
  2. uses Crt;
  3. const N = 10;
  4. var A: array [1..N] of integer;
  5. begin
  6. ClrScr;
  7. writeln(‘ Введённый массив:’);
  8. for i:= 1 to N do begin
  9. A[i]:=Random;
  10. write(A[i]:4);
  11. end;
  12. writeln;
  13. for i:= N downto 1 do
  14. write(A[i]:4);
  15. readln
  16. end.
Вывод на экран - Введённый массив
Листинг программы
  1. 0 3 86 20 27 67 31 16 37 42
  2. 42 37 16 31 67 27 20 86 3 0

Решение задачи: «Как вывести элементы массива в обратном порядке без введения второго цикла ?»

textual
Листинг программы
  1. program test;
  2.  
  3. const
  4.   N = 10;
  5. type
  6.   TArray = array [1..N] of integer;
  7.  
  8.   procedure FillAndShowArray(var A: TArray);
  9.  
  10.     procedure recurse(i: integer);
  11.     begin
  12.       if i > N then
  13.       begin
  14.         writeln;
  15.         exit;
  16.       end;
  17.       A[i] := i;
  18.       Write(A[i]: 4);
  19.       recurse(i + 1);
  20.       Write(A[i]: 4);
  21.     end;
  22.  
  23.   begin
  24.     recurse(1);
  25.     writeln;
  26.   end;
  27.  
  28. var
  29.   A: TArray;
  30. begin
  31.   FillAndShowArray(A);
  32. end.

Объяснение кода листинга программы

В данном коде объявлен тип данных TArray, представляющий собой массив целых чисел размером до 10 элементов. Также определен процедурный модуль FillAndShowArray, который заполняет массив случайными числами и выводит его элементы в обратном порядке. Внутри процедуры FillAndShowArray используется рекурсивный алгоритм, который начинает с индекса 1 и последовательно заполняет элементы массива A значениями i, затем выводит их на экран. Если индекс i превышает размер массива N, то выводится пустая строка и рекурсия прекращается. Процедура recurse является вспомогательной для FillAndShowArray. Она вызывает саму себя с увеличенным на 1 индексом i, пока i меньше или равно N. После каждого вызова recurse значение i увеличивается на единицу, а также выводится на экран соответствующий элемент массива A. В основной части кода вызывается процедура FillAndShowArray для заполнения и вывода массива A.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 3.6 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы