Задание 16 ОГЭ по информатике · 0A474B
ПовышеннаяКЭС 3.2
Напишите программу, которая в последовательности натуральных десятичных чисел определяет наибольший элемент, запись которого в системе счисления с основанием 7 оканчивается нечётной цифрой. Если среди входных данных таких элементов нет, программа должна вывести «NO».
Программа получает на вход в первой строке натуральное число – количество чисел N (3 ≤ N ≤ 10 000), затем N натуральных чисел, не превышающих 30 000, каждое в отдельной строке.
Программа должна вывести одно десятичное число – наибольший элемент последовательности, запись которого в 7-ричной системе счисления оканчивается нечётной цифрой, или «NO», если среди входных данных таких элементов нет.
Пример работы программы
Программа получает на вход в первой строке натуральное число – количество чисел N (3 ≤ N ≤ 10 000), затем N натуральных чисел, не превышающих 30 000, каждое в отдельной строке.
Программа должна вывести одно десятичное число – наибольший элемент последовательности, запись которого в 7-ричной системе счисления оканчивается нечётной цифрой, или «NO», если среди входных данных таких элементов нет.
Пример работы программы
| Входные данные | Выходные данные |
|---|---|
| 6 12 15 10 71 50 11 | 71 |
Показать ответ
Программа должна проверять остаток от деления каждого числа на 7, находить максимум среди чисел с остатком 1, 3 или 5 и выводить NO при отсутствии таких чисел.
Подсказки (3)
- Какая операция позволяет определить последнюю цифру числа в системе счисления с основанием 7?
- Последняя цифра записи числа в системе счисления с основанием 7 равна остатку от деления числа на 7. Проверьте, является ли этот остаток одним из нечётных чисел 1, 3 или 5.
- Перебирайте все числа, если x mod 7∈{1,3,5}, обновляйте максимум. Если подходящих чисел не найдено, выведите NO.
Решение
1. Последняя цифра записи натурального числа в системе счисления с основанием 7 определяется остатком от деления этого числа на 7.
d=x mod 7
2. Нечётные цифры в семеричной системе счисления — это 1, 3 и 5. Поэтому число подходит, если остаток от его деления на 7 принадлежит множеству {1, 3, 5}.
x mod 7∈{1,3,5}
3. Во время чтения чисел храним наибольшее подходящее значение. Изначально удобно использовать значение None, чтобы отличить отсутствие подходящих чисел от найденного числа.
4. После обработки всех чисел выводим найденный максимум или NO, если подходящих чисел не было.
5. Пример программы:
d=x mod 7
2. Нечётные цифры в семеричной системе счисления — это 1, 3 и 5. Поэтому число подходит, если остаток от его деления на 7 принадлежит множеству {1, 3, 5}.
x mod 7∈{1,3,5}
3. Во время чтения чисел храним наибольшее подходящее значение. Изначально удобно использовать значение None, чтобы отличить отсутствие подходящих чисел от найденного числа.
4. После обработки всех чисел выводим найденный максимум или NO, если подходящих чисел не было.
5. Пример программы:
data = list(map(int, open(0).read().split()))
N = data[0]
maximum = None
for x in data[1:N + 1]:
if x % 7 in (1, 3, 5):
if maximum is None or x > maximum:
maximum = x
print(maximum if maximum is not None else 'NO')Частые ошибки
- Проверяют нечётность самого числа, а не последней цифры его семеричной записи.
- Забывают, что остаток 0, 2, 4 или 6 соответствует чётной последней цифре.
- Выводят 0 или другое начальное значение вместо NO, если подходящих чисел нет.
- Сравнивают числа после перевода в семеричную систему, хотя для поиска максимума нужно сравнивать исходные десятичные значения.
Источник: Открытый банк ФИПИ
Похожие задания
16Напишите программу, которая в последовательности целых чисел определяет количество чётных чисел, кратных 7.…Задания открытого банка ФИПИ · 02A26716Напишите программу, которая в последовательности натуральных чисел определяет максимальное число, кратное 4.…Задания открытого банка ФИПИ · 04658716Напишите программу, которая в последовательности натуральных чисел определяет сумму чисел, оканчивающихся на…Задания открытого банка ФИПИ · 06D42C16Напишите программу, которая в последовательности целых чисел вычисляет сумму всех чисел, которые кратны 4 или…Задания открытого банка ФИПИ · 08A5D816Напишите программу, которая в последовательности натуральных десятичных чисел определяет сумму элементов…Задания открытого банка ФИПИ · 0B731216Напишите программу, которая в последовательности целых чисел определяет количество чисел, кратных 4 и…Задания открытого банка ФИПИ · 0B958016Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в…Задания открытого банка ФИПИ · 0F8FD516Напишите программу, которая в последовательности натуральных десятичных чисел определяет среднее…Задания открытого банка ФИПИ · 0FCA49
Нужен репетитор по информатике?
Посмотрите репетиторов, которые ведут занятия в Precettore, или оставьте заявку — подберём сами.
Готовьтесь к ОГЭ по информатике в Precettore
Варианты с автопроверкой, домашние задания от репетитора, онлайн-доска и разбор ошибок — в одном кабинете. Регистрация бесплатная.