Найти в матрице первую строку, все элементы которой равны нулю - C (СИ)
Формулировка задачи:
Найти в матрице первую строку, все элементы которой равны нулю. Все элементы столбца с таким же номером уменьшить вдвое
Решение задачи: «Найти в матрице первую строку, все элементы которой равны нулю»
textual
Листинг программы
- #include <stdio.h>
- #include <stdlib.h>
- int main(int argc, char *argv[]) {
- int mas[][4]={ {4,0,28,2},
- {6,0,-6,0},
- {0,0,0,0},
- {8,9,4,1}};
- int i,j,k,n=0;
- for(i=0;i<4;i++){
- k=0;
- for(j=0;j<4;j++){
- if(mas[i][j]==0) k++;
- }
- if(k==4) n=i;
- }
- for(j=0;j<4;j++){
- mas[j][n]/=2;
- }
- for(i=0;i<4;i++){
- for(j=0;j<4;j++)
- printf("%4d",mas[i][j]);
- printf("\n");
- }
- return 0;
- }
Объяснение кода листинга программы
В этом коде:
- Объявлена матрица
mas
размером 4x4, заполненная значениями. - В цикле перебираются строки матрицы.
- В каждой строке в цикле перебираются элементы.
- Если элемент равен нулю, то увеличивается счетчик
k
. - Если все элементы строки равны нулю, то запоминается номер строки
n
. - В каждой строке, начиная с 0-й, вычисляется средний элемент и записывается в соответствующий элемент матрицы.
- Выводится на экран содержимое матрицы.
- Возвращается 0, завершая работу программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д