/* 180985
Дано:
Dab=ln/xa3(3 степень)+SINyb/
Xa={0.75;-3.1;1}
Yb={5.1;0;3.7}
Найти:
- произведение элементов матрицы D, больших 2.
- наибольший элемент матрицы */
#include <stdio.h>
#include <math.h>
int main(void)
{
enum {m=3, n=3};
double X[m] = {0.75, -3.1, 1.0};
double Y[n] = {5.1, 0, 3.7};
double D[m][n];
int a, b;
double max; /* наибольший элемент матрицы D */
double p; /* произведение элементов матрицы D, больших 2 */
int has_element; /* флаг, содержит элемент, больший двух */
/* Заполнение матрицы D */
for (a=0; a<m; a++)
for (b=0; b<n; b++)
D[a][b] = log(fabs(pow(X[a],3)+sin(Y[b])));
/* Печать матрицы D */
printf("Матрица D\n");
for (a=0; a<m; a++)
{
for (b=0; b<n; b++)
printf("%8.4f", D[a][b]);
printf("\n");
}
/* Произведение элементов матрицы, больших 2 */
for (a=0, has_element=0, p=1.0; a<m; a++)
for (b=0; b<n; b++)
if (D[a][b]>2)
{
p*=D[a][b];
if (has_element == 0)
has_element = 1;
}
(has_element==1)?
printf("Произведение элементов матрицы D, больших 2, p=%7.4f\n", p):
printf("Нет элементов матрицы D, больших 2\n");
/* Наибольший элемент матрицы */
for (a=0, max=D[0][0]; a<m; a++)
for (b=0; b<n; b++)
if (D[a][b]>max)
max = D[a][b];
printf("Наибольший элемент матрицы D, max=%7.4f\n", max);
return 0;
}
Матрица D
-0.6853 -0.8630 -2.2260
3.4248 3.3942 3.4118
-2.6012 0.0000 -0.7547
Произведение элементов матрицы D, больших 2, p=39.6609
Наибольший элемент матрицы D, max= 3.4248
Если Вы уже зарегистрированы на Портале - войдите в систему, если Вы еще не регистрировались - пройдите простую процедуру регистрации.