Найти сумму неотрицательных элементов матрицы выше побочной диагонали и ниже главной диагонали - C (СИ)
Формулировка задачи:
Есть задание: Дана квадратная вещественная матрица размерности n. Найти сумму неотрицательных элементов: выше побочной диагонали; ниже главной диагонали.
Вот написал для этого задания код. Какие нужно задать условия , чтобы выбрать елементы выше побочной и ниже главной. В коде там стоят знаки вопроса.
#include <stdio.h> int main() { int i=0, j=0, x=0, y=0, z=0; printf("Kvadratnaya matritsa vida x*x\n"); printf("Vvedite x: "); scanf("%d", &x); int s[x][x]; for(i=0; i<x; i++) { for(j=0; j<x; j++) { printf("\nVvedite element S[%d][%d]: ", i, j); scanf("%d", &(s[i][j])); } } for (i=0; i<x; i++) { for(j=0;j<x; j++) { if (????) { y+=s[i][j]; s[i][j]=y; } else if(????) { z+=s[i][j]; s[i][j]=z; } } } printf("Symma nuje glavnoi: %d\n", y); printf("Symma vushe pobochnoi: %d\n", z); return 0; }
Решение задачи: «Найти сумму неотрицательных элементов матрицы выше побочной диагонали и ниже главной диагонали»
textual
Листинг программы
//фрагмент кода for(...) { for(j=0;j!=x-counter;j++) // на первой строке матрицы мы должны дойти до s[0][3]; { // на второй до s[1][2] , на третей s[2][1] и т.д. if(s[i][j]>=0) // [U] а столбец дикрементируется за счет counter++;[/U] z+=s[i][j]; } counter++; }
Объяснение кода листинга программы
В этом фрагменте кода реализуется функция, которая находит сумму неотрицательных элементов матрицы выше побочной диагонали и ниже главной диагонали. Вот список действий:
- Входные данные: матрица
s
и её размерx
. - Переменная
i
инициализируется значением 0, а переменнаяj
- значением 0. - Начальное значение переменной
counter
равно 0. - Первый вложенный цикл начинается. Переменная
j
итерируется от 0 доx-counter-1
. - В каждой итерации внутреннего цикла проверяется, больше ли значение элемента
s[i][j]
нуля. Если это так, то к переменнойz
прибавляется значение этого элемента. - После завершения внутреннего цикла переменная
counter
увеличивается на 1. - После завершения внешнего цикла переменная
i
увеличивается на 1. - Если
i
меньшеx
, то циклы повторяются. - По завершении циклов возвращается значение переменной
z
.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д