Самый правый положительный элемент строки матрицы - C (СИ)
Формулировка задачи:
Подскажите пожалуйста как найти самый правый положительный элемент каждой строки матрицы?
Решение задачи: «Самый правый положительный элемент строки матрицы»
textual
Листинг программы
#include <stdio.h> #include <stdlib.h> #include <time.h> #define M 5 #define N 7 int main() { int i, j, right, flag, A[M][N]; srand(time(0)); for(i = 0; i < M; ++i){ right = 0; flag = 0; for(j = 0; j < N; ++j){ A[i][j] = rand() % 200 - 100; printf("%4d", A[i][j]); if(A[i][j] > 0) flag = 1; if(A[i][j] > 0 && j > right) right = j; } if(!flag) puts(" This line have not positive elements."); else printf(" The rightmost positive line item A[%d][%d] = %d\n", i, right, A[i][right]); } return 0; }
Объяснение кода листинга программы
В этом коде ищется самый правый положительный элемент в каждой строке матрицы 5x7, при этом:
- Переменная
i
используется для прохода по строкам матрицы (итерируется от 0 до 4). - Переменная
j
используется для прохода по столбцам матрицы (итерируется от 0 до 6). - Переменная
right
используется для хранения индекса самого правого положительного элемента в строке. - Переменная
flag
используется для проверки наличия положительных элементов в строке (итерируется от 0 до 6). - Переменная
A[i][j]
используется для хранения значения элемента матрицы, инициализируется случайным числом от -100 до 100. - Выводится значение
A[i][j]
с помощью функцииprintf
, при этом выводимое значение округляется до 4 цифр с помощью спецификатора формата%4d
. - Если
A[i][j]
больше 0, тоflag
устанавливается в 1. - Если
A[i][j]
больше 0 иj
большеright
, тоright
устанавливается равнымj
. - После завершения прохода по всем столбцам, если
flag
равен 0, то выводится сообщениеThis line have not positive elements.
с помощью функцииputs
. - Если
flag
не равен 0, то выводится сообщениеThe rightmost positive line item A[%d][%d] = %d\n
с помощью функцииprintf
, при этомi
,right
иA[i][right]
подставляются в соответствующие места в сообщении. - В конце программы возвращается 0, что означает успешное выполнение программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д