Опишите на русском языке или на одном из языков программирования
Условие
Дан целочисленный массив из 30 элементов. Элементы массива могут принимать значения от -20 до 20 − сведения о температуре за каждый день ноября. Опишите на русском языке или на одном из языков программирования алгоритм, который находит и выводит максимальную температуру среди дней, когда были заморозки (то есть температура опускалась ниже нуля). Гарантируется, что хотя бы в один день ноября была отрицательная температура.Исходные данные объявлены так, как показано ниже. Запрещается использовать переменные, не описанные ниже, но разрешается не использовать части из них. Бэйсик | Паскаль | CONST N = 30 DIM I, J, MAX AS INTEGER DIM A(1 TO N) AS INTEGER FOR I = 1 TO N INPUT A(I) NEXT I... END | const N=30;var a: array[1..N] of integer;i, j, max: integer;beginfor i:=l to N do readln(a[i]);...end | Си++ | Естнественный язык | #include <iostream>using namespace std; #define N 30 int main (void){ int a[N]; int i, j, max;for (i=0; i<N; i++) cin >> a[i] ;...} | Объявляем массив А из 30 элементов. Объявляем целочисленные переменные i, j, max. В цикле от 1 до 30 вводим элементы массива А с 1-го по 30-й.... | Python |
допускается также# использовать две# целочисленные переменные j, maxa = []n = 30for i in range(0, n): a.append(int(input()))... |
Критерии оценивания выполнения задания | Баллы | Предложен правильный алгоритм, выдающий верное значение. Допускается запись алгоритма на другом языке, использующая аналогичные переменные. В случае, если язык программирования использует типизированные переменные, описания переменных должны быть аналогичны описаниям переменных на естественном языке. Использование нетипизированных или необъявленных переменных возможно только в случае, если это допускается языком программирования, при этом количество переменных и их идентификаторы должны соответствовать условию задачи. В алгоритме, записанном на языке программирования, допускается наличие отдельных синтаксических ошибок, не искажающих замысла автора программы. | 2 | В любом варианте решения может присутствовать не более одной ошибки из числа следующих: 1) не инициализируется или неверно инициализируется переменная; 2) при выводе ответа не учитывается, что требуемого числа в массиве может не быть; 3) отсутствует вывод ответа; 4) в сравнении перепутан знак; 5) неверно осуществляется проверка делимости; 6) на делимость проверяется не значение элемента, а его индекс; 7) в сложном условии вместо логической операции «И» используется логическая операция «ИЛИ»; 8) используется переменная, не объявленная в разделе описания переменных; 9) не указано или неверно указано условие завершения цикла; 10) индексная переменная в цикле не меняется (например, в цикле while) или меняется неверно; 11) неверно расставлены операторные скобки | 1 | Ошибок, перечисленных в п. 1-11, две или больше, или алгоритм сформулирован неверно | 0 | Максимальный балл | 2 |
Формат задания
Решение по шагам
Как рассуждать
Решение. max:= -20;for i:=1 to N doif (a[i]<0) and (a[i]>=max) then max:=a[i];writeln(max);end.
Осталось ещё 1 шаг — откроются после входа:
- Полный разбор с проверкой ответа
Бесплатно · займёт минуту