6. На вход программы поступает натуральное число N, не превышающее 109. Требуется найти и вывести наибольшую чётную цифру в десятичной записи этого числа или вывести «NO», если таких цифр нет. К сожалению, приведённая ниже программа неправильная. n = int(input())
t = 0
m = t
while n > 1:
d = n % 10
if d % 2 == 0 or d > m:
m = m + d
n = n // 10
if m == t:
print("NO")
else:
print(m)
Последовательно выполните следующее.
1. Напишите, что выведет эта программа при вводе числа 132.
2. Какое наибольшее число может быть выведено при вводе трёхзначного числа? Сколько существует таких чисел N, при вводе которого программа выведет такой ответ?
3. Найдите допущенные программистом ошибки и исправьте их.
7. Дан массив, содержащий 2014 положительных целых чисел. Напишите на одном из языков программирования программу, которая находит в этом массиве количество локальных минимумов. Локальным минимумом называется элемент массива, который меньше всех своих соседей. Например, в массиве из 6 элементов, содержащем числа 4, 6, 12, 7, 3, 8, есть два локальных минимума: это элементы, равные 4 и 3. Программа должна вывести общее количество подходящих элементов, значения элементов выводить не нужно. Исходные данные объявлены так, как показано ниже. Запрещается использовать переменные, не описанные ниже, но разрешается не использовать часть из описанных.
# допускается также использовать три целочисленные переменные i, j, k
a = []
n = 2014
for i in range(0, n):
a.append(int(input()))
...
8. Напишите программу, которая в последовательности натуральных чисел определяет количество чисел, кратных 3 и оканчивающихся на 2. Программа получает на вход количество чисел в последовательности, а затем сами числа. Количество чисел не превышает 1000. Введённые числа по модулю не превышают 30 000. Программа должна вывести одно число: количество чисел, кратных 3 и оканчивающихся на 2.

Dayanna01 Dayanna01    2   01.11.2020 16:55    26

Другие вопросы по теме Информатика