Не могу разобраться с циклом - C (СИ)
Формулировка задачи:
Доброго времени суток.В матрице нужно найти строку в которой элементы упорядоченны по возрастанию, не могу правильно оформить цикл, помогите плз(Если возможно через динамический массив), спасибо.
for(i = 0; i < n; i++) { for(j = 0; j < m-1; j++) { if(*(a+i*m+j) < *(a+i*m+j+1) && i != n) index_i = i; break; } }
Решение задачи: «Не могу разобраться с циклом»
textual
Листинг программы
for(i = 0; i < n; i++) { for(j = 0; j < n-1; j++) { if(a[i][j]>a[i][j+1]) { flag=0; break; } if(a[i][j]<a[i][j+1]) flag=1; } if(flag) { index_i = i+1; break; } }
Объяснение кода листинга программы
- Переменная
i
инициализируется значением 0. - Переменная
j
инициализируется значением 0. - Цикл выполняется, пока значение переменной
i
меньшеn
. - Внутри цикла выполняется еще один цикл, пока значение переменной
j
меньшеn-1
. - Внутри второго цикла проверяется, больше ли значение элемента массива
a[i][j]
значения элементаa[i][j+1]
. - Если это условие истинно, то переменная
flag
устанавливается равной 0 и второй цикл прерывается. - Если значение
a[i][j]
меньше значенияa[i][j+1]
, то переменнаяflag
устанавливается равной 1. - После завершения второго цикла, если значение переменной
flag
равно 0, то выполняется следующий блок кода. - Значение переменной
index_i
устанавливается равнымi+1
и первый цикл прерывается. - Если значение переменной
flag
равно 1, то первый цикл продолжается. - Первый цикл завершается, когда значение переменной
i
становится равнымn
. - Если значение переменной
flag
не определено (равно 0), то значение переменнойindex_i
не устанавливается и программа продолжает работу. - Если значение переменной
flag
равно 1, то значение переменнойindex_i
устанавливается равнымi+1
. - Значение переменной
flag
не определено (равно 0), поэтому программа продолжает работу. - Значение переменной
flag
равно 1, поэтому программа прерывается. - Значение переменной
flag
не определено (равно 0), поэтому программа продолжает работу. - Значение переменной
flag
равно 1, поэтому программа прерывается. - Значение переменной
flag
не определено (равно 0), поэтому программа продолжает работу. - Значение переменной
flag
равно 1, поэтому программа прерывается. - Значение переменной
flag
не определено (равно 0), поэтому программа продолжает работу.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д