#include
#include
#include
#include
#include
#define SEVEN 7
void show(int [][SEVEN]);
size_t index_row_max_element(int [][SEVEN]);
size_t index_column_min_element(int [][SEVEN]);
void multiplication(int [][SEVEN], size_t, size_t);
int main () {
int matrix[SEVEN][SEVEN];
size_t r, c;
srand((unsigned)time(NULL));
for (r = 0; r < SEVEN; r++)
for (c = 0; c < SEVEN; c++)
matrix[r][c] = 1 + rand() % 999;
setlocale(LC_CTYPE, "Russian_Russia.1251");
printf("\tИсходный матрица: \n\n");
show(matrix);
multiplication(matrix, index_row_max_element(matrix), index_column_min_element(matrix));
_getch();
return 0;
}
void show(int _matrix[][SEVEN]) {
size_t n, m;
for (n = 0; n < SEVEN; n++, printf("\n\n"))
for (m = 0; m < SEVEN; m++)
printf("%5i", _matrix[n][m]);
}
void multiplication(int _matrix[][SEVEN], size_t _row, size_t _col) {
size_t n;
int first, second;
for (n = 0; n < SEVEN; n++) {
first = _matrix[_row][n];
second = _matrix[n][_col];
printf(" %3i x %3i = %.0Lf\n", first, second, (double)first * second);
}
}
size_t index_row_max_element(int _matrix[][SEVEN]) {
size_t index = 0, r, c;
int max = _matrix[0][0];
for (r = 0; r < SEVEN; r++)
for (c = 0; c < SEVEN; c++)
if (max < _matrix[r][c]) {
max = _matrix[r][c];
index = r;
}
return index;
}
size_t index_column_min_element(int _matrix[][SEVEN]) {
size_t index = 0, r, c;
int min = _matrix[0][0];
for (r = 0; r < SEVEN; r++)
for (c = 0; c < SEVEN; c++)
if (min > _matrix[r][c]) {
min = _matrix[r][c];
index = c;
}
return index;
}