Дана прямоугольная матрица. Найти столбец с наибольшей и наименьшей суммой элементов - C (СИ)
Формулировка задачи:
Дана прямоугольная матрица. Найти столбец с наибольшей и наименьшей суммой элементов. Вывести на печать
найденные столбцы и суммы их элементов.
Решение задачи: «Дана прямоугольная матрица. Найти столбец с наибольшей и наименьшей суммой элементов»
textual
Листинг программы
- #include <stdio.h>
- #include <locale.h>
- int main(void){
- setlocale(LC_ALL, "Ru");
- int a[4][4]={{3,8,12,82},{45,678,23,1},{567,543,83,4},{89,67,62,345}};
- int i,j=0,max,min,b[4]={0},nmax,nmin;
- for(j=0;j<4;j++){for(i=0;i<4;i++){b[j]+=a[i][j];}}
- min=max=b[0];
- for(i=0;i<4;i++){if(max<b[i]){max=b[i];nmax=i;}if(min>b[i]){min=b[i];nmin=i;}}
- printf("Элементы столбца №%d с наибольшей суммой %d :\n",nmax+1,max);
- for(i=0;i<4;i++)printf("%d\n",a[i][nmax]);
- printf("Элементы столбца №%d с наименьшей суммой %d :\n",nmin+1,min);
- for(i=0;i<4;i++)printf("%d\n",a[i][nmin]);
- return( 0);
- }
Объяснение кода листинга программы
В этом коде даны объявления переменных:
- a[4][4] - это прямоугольная матрица размером 4 на 4, заполненная произвольными значениями.
- i, j - это счётчики, которые будут использоваться в циклах.
- max, min - это переменные для хранения наибольшего и наименьшего значения суммы элементов столбца.
- b[4] - это переменная для хранения суммы элементов столбца.
- nmax, nmin - это переменные для хранения номера столбца с наибольшим и наименьшим значением суммы элементов. Далее, в цикле for происходит подсчёт суммы элементов каждого столбца и сохранение этих значений в переменную b[j]. Затем, в цикле for снова, но уже с использованием переменных i и j, находятся наибольшее и наименьшее значение суммы элементов столбца, а также их номера. И наконец, выводятся элементы найденных столбцов с помощью функции printf.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д