Решение задачи на одномерный массив - Pascal ABC

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

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

Help В одномерном массиве А(N) (N<=60) найти максимальный элемент. Все отрицательные элементы массива А умножить на этот элемент. Преобразованный массив распечатать.
Я попытался сделать, но ой как не уверен что хоть что-нибудь правильно.

Решение задачи: «Решение задачи на одномерный массив»

textual
Листинг программы
const nmax=60;
var a:array[1..nmax] of integer;
    i,n,max:integer;
begin
 repeat
  write('n<=',nmax,', n = ');readln(n);
 until (n>0)and(n<=nmax); 
 writeln('Исходный массив:');
 randomize;
 for i:=1 to n do
  begin
   a[i]:=-50+random(101);
   write(a[i],' ')
  end; 
 writeln; 
 Max:=a[1];
 for i:=2 to n do if max<a[i] then max:=a[i];
 writeln ('максимальный элемент в массиве=',Max);
 writeln('Преобразованный массив:');
 for i:=1 to n do
  begin
   if a[i]<0 then a[i]:=a[i]*max;
   write(a[i],' ')
  end 
end.

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

  1. Переменная nmax инициализируется значением 60.
  2. Создается переменная a типа array[1..nmax] of integer.
  3. Задаются три переменные: i, n и max.
  4. Запускается цикл repeat, который продолжается до тех пор, пока n больше или равно 0 и n меньше или равно nmax.
  5. В каждой итерации цикла выводится запрос на ввод значения n.
  6. После окончания цикла выводится сообщение об исходном массиве.
  7. Запускается цикл randomize, который генерирует случайное число в диапазоне от 0 до 100 для каждой итерации цикла.
  8. Запускается цикл for, который повторяется n раз.
  9. В каждой итерации цикла выводится значение a[i] с пробелом слева.
  10. Значение max инициализируется первым элементом массива a[1].
  11. Запускается еще один цикл for, который повторяется от 2 до n.
  12. Если max меньше a[i], то max присваивается значение a[i].
  13. После окончания второго цикла выводится сообщение о максимальном элементе в массиве.
  14. Выводится сообщение о преобразованном массиве.
  15. Запускается еще один цикл for, который повторяется от 1 до n.
  16. Если a[i] меньше 0, то a[i] умножается на max и присваивается обратно в a[i].
  17. После окончания третьего цикла выводится преобразованный массив.
  18. Программа завершается.

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


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

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

12   голосов , оценка 4.167 из 5
Похожие ответы