Значения элементов массива вычислить по формуле a=a(i,j), и выполнить задачу - Turbo Pascal
Формулировка задачи:
Сформировать вектор из строки с наименьшим весом , а вес строки взять
формула:
Решение задачи: «Значения элементов массива вычислить по формуле a=a(i,j), и выполнить задачу»
textual
Листинг программы
var a: array [0..4, 0..2] of double; b: array [0..2] of double; i, j, k: integer; s, t: double; begin writeln('Матрица:'); for i := 0 to 4 do begin t := 0; for j := 0 to 2 do begin a[i, j] := sqr(cos(i + 1)) / (j + 1); write(a[i, j]:18:14); t := t + abs(a[i, j]) + a[i, j] end; if (i = 0) or (t < s) then begin k := i; s := t end; writeln end; writeln('Строка с наименьшим "весом":'); for i := 0 to 2 do begin b[i] := a[k, i]; write(b[i]:18:14) end; readln end.
Объяснение кода листинга программы
- Создается массив
a
типаarray [0..4, 0..2] of double
, который будет использоваться для хранения значений. - Создается массив
b
типаarray [0..2] of double
, который будет использоваться для хранения значений. - Создаются переменные
i
,j
иk
типаinteger
, которые будут использоваться для индексации массивов. - Создается переменная
s
типаdouble
, которая будет использоваться для хранения минимального значения. - Создается переменная
t
типаdouble
, которая будет использоваться для хранения суммы значений. - Выводится сообщение «Матрица:» и выполняется цикл
for i := 0 to 4 do
, который будет выполняться 5 раз. - Внутри цикла создается переменная
t
со значением 0 и выполняется циклfor j := 0 to 2 do
, который будет выполняться 3 раза. - Внутри цикла вычисляется значение
a[i, j]
по формулеa[i, j] = sqr(cos(i + 1)) / (j + 1)
, и выводится его значение с помощью функцииwrite(a[i, j]:18:14)
. - Значение
t
увеличивается на сумму абсолютных значений элементов массиваa[i, j]
и текущего элементаa[i, j]
. - Если текущая строка является первой или значение
t
меньше значенияs
, то присваивается значениеk
равноеi
иs
обновляется на значениеt
. - После завершения внутреннего цикла выводится сообщение «Строка с наименьшим
весом
:» и выполняется циклfor i := 0 to 2 do
, который будет выполняться 3 раза. - Внутри цикла присваивается значение
b[i]
равное значениюa[k, i]
и выводится его значение с помощью функцииwrite(b[i]:18:14)
. - Программа завершается вызовом функции
readln()
.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д