Поменять местами столбцы, содержащие минимальный и максимальный элементы матрицы - C (СИ)
Формулировка задачи:
Прошу помочь в данной задаче.
Дана матрица размера M × N. Поменять местами столбцы, содержащие минимальный и максимальный элементы матрицы
Решение задачи: «Поменять местами столбцы, содержащие минимальный и максимальный элементы матрицы»
textual
Листинг программы
int i, j, n, m, maxCol, minCol; double maxVal, minVal, dblBuf; double a[50][50]; n = 5; m = 4; maxVal = -1000000; minVal = 1000000; // Заполнение массива for (i = 0; i < n; i++) { for (j = 0; j < m; j++) { a[i][j] = rand() % 50; printf("%6.2lf ", a[i][j]); } printf("\n"); } printf("\n"); // Поиск максимального и минимального значение и номеров соответствующих столбцов for (i = 0; i < n; i++) { for (j = 0; j < m; j++) { if (a[i][j] > maxVal) { maxVal = a[i][j]; maxCol = j; } if (a[i][j] < minVal) { minVal = a[i][j]; minCol = j; } } } // Замена столбцов for (i = 0; i < n; i++) { dblBuf = a[i][maxCol]; a[i][maxCol] = a[i][minCol]; a[i][minCol] = dblBuf; } // Вывод результатаов printf("Максимальное значение (%f) содержится в столбце (%d)\n", maxVal, maxCol); printf("Минимальное значение (%f) содержится в столбце (%d)\n", minVal, minCol); printf("Модифицированная таблица:\n", minVal, minCol); for (i = 0; i < n; i++) { for (j = 0; j < m; j++) { printf("%6.2lf ", a[i][j]); } printf("\n"); } printf("\n");
Объяснение кода листинга программы
- Объявлены необходимые переменные:
i
,j
,n
,m
,maxCol
,minCol
- целочисленные индексы для работы с матрицей;maxVal
,minVal
- для хранения максимального и минимального значений в матрице;dblBuf
- для временного хранения значения при перестановке столбцов;a[50][50]
- двумерный массив размерности 50x50.
- Заполнение матрицы
a
случайными значениями от 0 до 49 с помощью функцииrand()
. - Поиск максимального и минимального значений в матрице
a
и их соответствующих столбцов. - Замена столбцов с минимальным и максимальным значениями с помощью временной переменной
dblBuf
. - Вывод на экран максимального и минимального значений и их столбцов.
- Вывод на экран модифицированной матрицы
a
.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д