Задание 16 ОГЭ по информатике · 026108
ПовышеннаяКЭС 3.2
Напишите программу, которая в последовательности натуральных десятичных чисел определяет среднее арифметическое элементов, запись которых в системе счисления с основанием 7 оканчивается цифрой 5. Если среди входных данных таких элементов нет, программа должна вывести «NO».
Программа получает на вход натуральные десятичные числа, не превышающие 30 000, каждое в отдельной строке. Количество введённых чисел неизвестно, их последовательность заканчивается числом 0 (0 – признак окончания ввода, в последовательность не входит).
Программа должна вывести одно число – среднее арифметическое десятичных чисел (элементов последовательности), запись которых в 7-ричной системе счисления оканчивается цифрой 5, или «NO», если среди входных данных таких элементов нет.
Пример работы программы
Программа получает на вход натуральные десятичные числа, не превышающие 30 000, каждое в отдельной строке. Количество введённых чисел неизвестно, их последовательность заканчивается числом 0 (0 – признак окончания ввода, в последовательность не входит).
Программа должна вывести одно число – среднее арифметическое десятичных чисел (элементов последовательности), запись которых в 7-ричной системе счисления оканчивается цифрой 5, или «NO», если среди входных данных таких элементов нет.
Пример работы программы
| Входные данные | Выходные данные |
|---|---|
| 12 14 20 68 25 0 | 40 |
Показать ответ
n = int(input()); s = 0; k = 0; while n != 0:; if n % 7 == 5:; s += n; k += 1; n = int(input()); if k == 0:; print('NO'); else:; print(s / k)
Подсказки (3)
- Как определить последнюю цифру записи числа в системе счисления с основанием 7, не переводя число полностью?
- Последняя цифра записи числа в системе счисления с основанием 7 равна остатку от деления этого числа на 7. Отбирайте числа, для которых n mod 7=5.
- Накопите сумму подходящих чисел и их количество. После завершения ввода выведите суммаколичество, а при нулевом количестве выведите `NO`.
Решение
1. Последняя цифра числа в семеричной системе счисления определяется остатком от деления этого числа на 7.
n mod 7=5
2. Организуем цикл чтения чисел до появления нуля. Для каждого числа, оканчивающегося цифрой 5 в семеричной записи, увеличиваем сумму и количество таких чисел.
S:=S+n,k:=k+1
3. После завершения ввода проверяем, были ли найдены подходящие числа. Если да, выводим среднее арифметическое S/k, иначе выводим `NO`.
4. В примере подходят числа 12 и 68: 12 mod 7=5, 68 mod 7=5. Их среднее арифметическое равно 12+682=40.
12+682=40
n mod 7=5
2. Организуем цикл чтения чисел до появления нуля. Для каждого числа, оканчивающегося цифрой 5 в семеричной записи, увеличиваем сумму и количество таких чисел.
S:=S+n,k:=k+1
3. После завершения ввода проверяем, были ли найдены подходящие числа. Если да, выводим среднее арифметическое S/k, иначе выводим `NO`.
4. В примере подходят числа 12 и 68: 12 mod 7=5, 68 mod 7=5. Их среднее арифметическое равно 12+682=40.
12+682=40
Частые ошибки
- Проверяют делимость числа на 7 вместо проверки остатка 5.
- Включают завершающий ноль в сумму или количество.
- Выводят `NO` только при сумме, равной нулю, вместо проверки количества подходящих чисел.
- Забывают прочитать следующее число внутри цикла.
Источник: Открытый банк ФИПИ
Похожие задания
16Напишите программу, которая в последовательности натуральных десятичных чисел определяет среднее…Задания открытого банка ФИПИ · 01450316Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в…Задания открытого банка ФИПИ · 01BD1316Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в…Задания открытого банка ФИПИ · 01BE0116Напишите программу, которая в последовательности целых чисел определяет количество чётных чисел, кратных 7.…Задания открытого банка ФИПИ · 02A26716Напишите программу, которая в последовательности натуральных чисел определяет максимальное число, кратное 4.…Задания открытого банка ФИПИ · 04658716Напишите программу, которая в последовательности натуральных чисел определяет сумму чисел, оканчивающихся на…Задания открытого банка ФИПИ · 06D42C16Напишите программу, которая в последовательности целых чисел вычисляет сумму всех чисел, которые кратны 4 или…Задания открытого банка ФИПИ · 08A5D816Напишите программу, которая в последовательности натуральных десятичных чисел определяет наибольший элемент…Задания открытого банка ФИПИ · 0A474B
Нужен репетитор по информатике?
Посмотрите репетиторов, которые ведут занятия в Precettore, или оставьте заявку — подберём сами.
Готовьтесь к ОГЭ по информатике в Precettore
Варианты с автопроверкой, домашние задания от репетитора, онлайн-доска и разбор ошибок — в одном кабинете. Регистрация бесплатная.