Задание 25. Дан целочисленный массив из 30 элементов. Элементы массива могут принимать значения от -20 до 20 — сведения о температуре за каждый день ноября. Опишите на русском языке или на одном из языков программирования алгоритм, который находит и выводит максимальную температуру среди дней, когда были заморозки (т.е. температура опускалась ниже нуля). Гарантируется, что хотя бы в один день ноября была отрицательная температура. Исходные данные объявлены так, как показано ниже. Запрещается использовать переменные, не описанные ниже, но разрешается не использовать часть из них.
В качестве ответа Вам необходимо привести фрагмент программы (или описание алгоритма на естественном языке), который должен находиться на месте многоточия. Вы можете записать решение также на другом языке программирования (укажите название и используемую версию языка программирования, например, Borland Pascal 7.0) или в виде блок-схемы. В этом случае Вы должны использовать переменные, аналогичные переменным, используемым в алгоритме, записанном на естественном языке, с учетом синтаксиса и особенностей используемого вами языка программирования.
Решение.
На языке Паскаль |
На языке Бейсик |
|
max:=-20; for i:=l to N do if (a[i]<0) and (a[i]>max) then max:=a[i]; writeln(max); |
MAX = -20 FOR I = 1 TO N IF A(I) < 0 AND A(I) > MAX THEN MAX = A(I) ENDIF NEXT I PRINT MAX |
|
На языке СИ |
На естественном языке |
|
max=-20; for (i = 0; i<N; i++ ) if(a[i]<0 && a[i]>max) max=a[i]; printf ( "%d", max); |
Записываем в переменную МАХ начальное значение, равное -20. В цикле от первого элемента до тридцатого сравниваем элементы исходного массива с нулём. Если текущий элемент меньше 0, то сравниваем значение текущего элемента массива со значением переменной МАХ. Если текущий элемент массива больше МАХ, то записываем в МАХ значение этого элемента массива. Переходим к следующему элементу. После завершения цикла выводим значение переменной МАХ. |
Другие задания:
Для наших пользователей доступны следующие материалы: