Решение: Максимальное число на 9
Напишите программу, которая в последовательности натуральных чисел определяет максимальное число, оканчивающееся на 9. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, оканчивающееся на 9.
Количество чисел не превышает 1000. Введённые числа по модулю не превышают 30 000.
Программа должна вывести одно число: максимальное число, оканчивающееся на 9.
Пример работы программы:
Входные данные:
3
9
19
23
Выходные данные:
19
Решение по шагам
6 шаговСчитываем количество чисел в последовательности.
Перебираем все числа. Если остаток от деления числа на 10 равен 9, число оканчивается на 9.
$$x \bmod 10 = 9$$Для подходящих чисел сохраняем наибольшее значение. Так как хотя бы одно такое число существует, начальное значение максимума можно взять равным 0.
После обработки всех чисел выводим найденный максимум.
Один из возможных вариантов программы:
```python
n = int(input())
maximum = 0
for _ in range(n):
x = int(input())
if x % 10 == 9 and x > maximum:
maximum = x
print(maximum)
```
```python
n = int(input())
maximum = 0
for _ in range(n):
x = int(input())
if x % 10 == 9 and x > maximum:
maximum = x
print(maximum)
```
Этот ответ получен в разборе, но не сверен с официальным ключом из банка — проверьте выкладки, прежде чем заучивать результат.
Где здесь ошибаются
Проверяют последнюю цифру с помощью деления вместо остатка от деления на 10.
Обновляют максимум для всех чисел, а не только для чисел, оканчивающихся на 9.
Забывают считать первое входное число — количество элементов последовательности.
Выводят количество подходящих чисел вместо максимального подходящего числа.