Другие языки программирования и технологии
помогите решить задачу математически. C++
Дана прямоугольная матрица n-ого порядка. Ее элементы целые числа, n<=50. Вычислить скалярное произведение строки с max элементом на столбец с min элементом.
// inj_2011-11-21
#include <iostream>
#include <ctime>
using namespace std;
#define N 4
void main()
{
srand((unsigned) time(NULL));
int a[N][N];
for (int n = 0; n < N; n++)
{
cout << endl;
for (int m = 0; m < N; m++)
{
a[n][m] = rand() % 51;
cout << '\t' << a[n][m];
}
}
cout << endl;
int min = a[0][0], max = a[0][0], maxIndex = 0, minIndex = 0;
for (int n = 0; n < N; n++)
for (int m = 0; m < N; m++)
{
if (min > a[n][m])
{
min = a[n][m];
minIndex = m;
}
if (max < a[n][m])
{
max = a[n][m];
maxIndex = n;
}
}
cout << endl << " Maximum: " << max << endl;
cout << " Minimum: " << min << endl << endl;
int lin, col;
for (int k = 0; k < N; k++)
{
for (int n = 0; n < N; n++) if (maxIndex == n) lin = a[n][k];
for (int m = 0; m < N; m++)if (minIndex == m) col = a[k][m];
cout << lin << " * " << col << " = " << lin * col << endl;
}
fflush(stdin);
cin.get();
}
#include <iostream>
#include <ctime>
using namespace std;
#define N 4
void main()
{
srand((unsigned) time(NULL));
int a[N][N];
for (int n = 0; n < N; n++)
{
cout << endl;
for (int m = 0; m < N; m++)
{
a[n][m] = rand() % 51;
cout << '\t' << a[n][m];
}
}
cout << endl;
int min = a[0][0], max = a[0][0], maxIndex = 0, minIndex = 0;
for (int n = 0; n < N; n++)
for (int m = 0; m < N; m++)
{
if (min > a[n][m])
{
min = a[n][m];
minIndex = m;
}
if (max < a[n][m])
{
max = a[n][m];
maxIndex = n;
}
}
cout << endl << " Maximum: " << max << endl;
cout << " Minimum: " << min << endl << endl;
int lin, col;
for (int k = 0; k < N; k++)
{
for (int n = 0; n < N; n++) if (maxIndex == n) lin = a[n][k];
for (int m = 0; m < N; m++)if (minIndex == m) col = a[k][m];
cout << lin << " * " << col << " = " << lin * col << endl;
}
fflush(stdin);
cin.get();
}
Не бывает прямоугольных матриц n-го порядка, только квадратные. У тебя - квадратная. Иначе скалярное произведение бы не существовало. Вычисляется скалярное произведение суммированием произведений пар элементов выбранной строки и выбранного столбца. Тут нечего "решать математически", только программировать.
Похожие вопросы
- Помогите решить задачи на C#
- Помогите решить задачу (Visual c++)
- Помогите решить задачи по C++
- Помогите решить задачу на C или C++, пожалуйста.
- Помогите решить задачу по C++
- Помогите решить задачу на C++
- Помогите решить задачу на C++. Двумерные массивы.
- помогите решить задачу на c++
- Помогите решить задачу по C#
- Помогите решить задачу c#