Задание: Ввести матрицу 5*5. Найти столбец с наименьшей суммой элементов и строку с наибольшей суммой элементов. Листинг программы. #include <stdio.h> #include <conio.h> #include <math.h> #include <stdlib.h>
int main() { int a[5][5]; //массив размерностью 5х5 int i, j, tmp_col=0, tmp_row=0, tmp=0, tmp_sum=0; //вспомогательные переменные
for (i=0;i<5;i++) for(j=0;j<5;j++) a[i][j]=rand()%25; // заполняем массив случайными числамии по модулю 25
for (i=0;i<5;i++) { for(j=0;j<5;j++) { printf("a[%d][%d]=%2d ",i+1,j+1,a[i][j]); } printf("\n"); } // выводим массив на экран
for (i=0;i<5;i++) { for(j=0;j<5;j++) tmp_sum+=a[i][j]; //суммируем все элементы массива в одной строке if(tmp_sum>tmp) { //если текущее значение больше предыддущего tmp=tmp_sum; //обновляем максимальное значение tmp_row=i; //записываем строку в которой найден максимум } tmp_sum=0;//обнуляем временное значение }
printf("The row #%d with sum %d is the maximum \n",tmp_row+1,tmp);
for (j=0;j<5;j++) { for(i=0;i<5;i++) tmp_sum+=a[i][j]; //суммируем все элементы массива в одном столбце if(j==0) {tmp=tmp_sum; tmp_col=j;} //если первый столбец, то записываем его значение else if(tmp_sum<tmp) { //если последующее столбцы имеют меньшую сумму, то записываем их значение. tmp=tmp_sum; tmp_col=j; } tmp_sum=0;//обнуляем временное значение }
printf("The column #%d with sum %d is the minimum \n",tmp_col+1,tmp);