Присоединиться

11 класс·высокий уровень

Опишите на языке программирования алгоритм подсчета максимального

Условие

Опишите на языке программирования алгоритм подсчета максимального количества подряд идущих элементов, каждый из которых больше предыдущего, в целочисленном массиве длины 30. Критерии оценивания выполнения задания | Баллы | Предложен правильный алгоритм, выдающий верное значение. Допускается запись алгоритма на другом языке, использующая аналогичные переменные. В случае, если язык программирования использует типизированные переменные, описания переменных должны быть аналогичны описаниям переменных на естественном языке. Использование нетипизированных или необъявленных переменных возможно только в случае, если это допускается языком программирования, при этом количество переменных и их идентификаторы должны соответствовать условию задачи. В алгоритме, записанном на языке программирования, допускается наличие отдельных синтаксических ошибок, не искажающих замысла автора программы. | 2 | В любом варианте решения может присутствовать не более одной ошибки из числа следующих: 1) не инициализируется или неверно инициализируется переменная; 2) при выводе ответа не учитывается, что требуемого числа в массиве может не быть; 3) отсутствует вывод ответа; 4) в сравнении перепутан знак; 5) неверно осуществляется проверка делимости; 6) на делимость проверяется не значение элемента, а его индекс; 7) в сложном условии вместо логической операции «И» используется логическая операция «ИЛИ»; 8) используется переменная, не объявленная в разделе описания переменных; 9) не указано или неверно указано условие завершения цикла; 10) индексная переменная в цикле не меняется (например, в цикле while) или меняется неверно; 11) неверно расставлены операторные скобки | 1 | Ошибок, перечисленных в п. 1-11, две или больше, или алгоритм сформулирован неверно | 0 | Максимальный балл | 2 |

Формат задания

Развёрнутый ответ: короткого ответа здесь нет — оценивается само рассуждение. Разбор откроется после входа.

Решение по шагам

  1. Как рассуждать

    Решение. Решение на Паскале. const N = 30;var a: array [1..N] of integer;MaxIncr, NumIncr, i: integer;begin for i := 1 to N do readln(a[i]); MaxIncr: =1; NumIncr: =1; for i: =1 to N-1 do if (a[i] < a [i+1]) then NumIncr: =NumIncr+1 elsebegin if (NumIncr > MaxIncr) then MaxIncr: =NumIncr; NumIncr: =1;end;if (NumIncr > MaxIncr) then MaxIncr:=NumIncr; writeln (MaxIncr);end.

Осталось ещё 1 шаг

  1. Полный разбор с проверкой ответа

Получить полное решение

Бесплатно · займёт минуту

Другие задачи по теме «Алгоритмы обработки массивов»

Опишите на языке программирования алгоритм подсчета максимального — решение с объяснением | Lom Ai