Получить новый массив путем деления всех элементов данного массива на ее больший по модулю элемент. - Turbo Pascal
Формулировка задачи:
4. Дан действительный массив размерностью n*m, в которой не все элементы равны нулю. Получить новый массив путем деления всех элементов данного массива на ее больший по модулю элемент.
Решение задачи: «Получить новый массив путем деления всех элементов данного массива на ее больший по модулю элемент.»
textual
Листинг программы
uses crt; const m=10; n=5; var a,b:array [1..m,1..n] of real; i,j:integer; max:real; begin clrscr; Writeln('Исходная матрица: '); max:=0; For i:=1 to m do begin For j:=1 to n do begin randomize; a[i,j]:=random*50-20; write(a[i,j]:8:3); if abs(a[i,j])>max then max:=a[i,j]; end; writeln; end; Writeln; Writeln('Новая матрица: '); For i:=1 to m do begin For j:=1 to n do begin a[i,j]:=a[i,j]/max; write(a[i,j]:8:3); end; writeln; end; readkey; end.
Объяснение кода листинга программы
- В начале кода подключается библиотека crt, которая необходима для работы с функцией randomize.
- Затем определяются две константы m и n, которые задают размеры исходной и новой матрицы соответственно.
- Далее объявляются переменные a, b, i и j. Переменная a представляет собой матрицу размером m x n, в которой будут храниться значения новой матрицы. Переменная b используется для хранения результата деления элементов матрицы на максимальное значение.
- После этого выполняется инициализация переменной max, которая будет хранить максимальное значение из элементов матрицы.
- Затем начинается цикл, который проходит по каждому элементу исходной матрицы.
- Внутри первого цикла выполняется итерация по каждому элементу второго столбца исходной матрицы.
- Для каждого элемента второго столбца вызывается функция randomize, которая генерирует случайное число в диапазоне от -20 до 20.
- Полученное случайное число присваивается элементу матрицы a[i,j].
- Выводится значение элемента a[i,j] с помощью функции write.
- Если полученное случайное число больше текущего максимального значения, то обновляем значение переменной max.
- По завершении внутреннего цикла первого цикла выводится символ новой строки.
- Затем начинается второй цикл, который проходит по каждому элементу исходной матрицы.
- Внутри второго цикла выполняется итерация по каждому элементу первого столбца исходной матрицы.
- Для каждого элемента первого столбца вызывается функция randomize, которая генерирует случайное число в диапазоне от -20 до 20.
- Полученное случайное число присваивается элементу матрицы a[i,j].
- Выводится значение элемента a[i,j] с помощью функции write.
- Если полученное случайное число больше текущего максимального значения, то обновляем значение переменной max.
- По завершении внутреннего цикла второго цикл выводится символ новой строки.
- Завершается основной цикл с помощью функции readkey, которая позволяет пользователю ввести новую команду до тех пор, пока не будет введено некорректное значение.
- Конец программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д