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