Максимальное число в последовательности
Напишите программу, которая в последовательности натуральных десятичных чисел определяет наибольший элемент, запись которого в системе счисления с основанием 9 оканчивается цифрой 1. Если среди входных данных таких элементов нет, программа должна вывести «NO». Программа получает на вход натуральные десятичные числа, не превышающие 30 000, каждое в отдельной строке. Количество введённых чисел неизвестно, их последовательность заканчивается числом 0 (0 — признак окончания ввода, в последовательность не входит). Программа должна вывести одно десятичное число — наибольший элемент последовательности, запись которого в 9-ричной системе счисления оканчивается цифрой 1, или «NO», если среди входных данных таких элементов нет.
Условие как в банке ФИПИ — открыть и сверить
| Напишите программу, которая в последовательности натуральных десятичных чисел определяет наибольший элемент, запись которого Программа получает на вход натуральные десятичные числа, Программа должна вывести одно десятичное число – наибольший элемент последовательности, запись которого в 9-ричной системе счисления оканчивается цифрой 1, или «NO», если среди входных данных таких элементов нет.
Пример работы программы
| ||||
| |
Это задание с развёрнутым решением: ответом считается запись хода решения, а не строка. Напишите решение на бумаге и сравните с разбором — там каждый шаг с обоснованием.
Открыть разбор1Мягкая — с чего смотретьуровень 1 из 3
Как определить последнюю цифру записи числа в системе счисления с основанием 9, не переводя всё число в эту систему?
2Наводящая — какие числа считатьуровень 2 из 3
Последняя цифра записи числа в системе счисления с основанием 9 равна остатку от деления этого числа на 9.
3Прямая — фактически решениеуровень 3 из 3
Обрабатывайте числа до появления 0; если $x \bmod 9 = 1$, обновляйте максимум. Отдельно храните признак того, что подходящее число найдено.