Задание 16 ОГЭ по информатике · 0FCA49
ПовышеннаяКЭС 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 | 31.6 |
Показать ответ
n = int(input()); s = 0; k = 0; for _ in range(n):; x = int(input()); if x % 7 % 2 == 1:; s += x; k += 1; if k == 0:; print('NO'); else:; print(s / k)
Подсказки (3)
- Как определить последнюю цифру числа при записи в системе счисления с основанием 7?
- Последняя цифра записи числа в системе счисления с основанием 7 равна остатку от деления этого числа на 7. Проверьте, является ли этот остаток нечётным.
- Для подходящих чисел накапливайте сумму и количество: если x mod 7 нечётно, добавьте x к сумме и увеличьте счётчик. После обработки всех чисел выведите сумма/количество или «NO».
Решение
1. Последняя цифра числа в системе счисления с основанием 7 определяется остатком от деления числа на 7.
d=x mod 7
2. Если остаток нечётный, число подходит: остатки 1, 3 и 5 соответствуют нечётным последним цифрам в семеричной записи.
x mod 7∈{1,3,5}
3. Для подходящих чисел вычисляем сумму и количество, затем находим среднее арифметическое.
среднее(x)=SK
4. Если подходящих чисел нет, счётчик равен нулю, поэтому выводим «NO», чтобы не выполнять деление на ноль.
5. Программа на Python:
d=x mod 7
2. Если остаток нечётный, число подходит: остатки 1, 3 и 5 соответствуют нечётным последним цифрам в семеричной записи.
x mod 7∈{1,3,5}
3. Для подходящих чисел вычисляем сумму и количество, затем находим среднее арифметическое.
среднее(x)=SK
4. Если подходящих чисел нет, счётчик равен нулю, поэтому выводим «NO», чтобы не выполнять деление на ноль.
5. Программа на Python:
n = int(input())
s = 0
k = 0
for _ in range(n):
x = int(input())
if x % 7 % 2 == 1:
s += x
k += 1
if k == 0:
print('NO')
else:
print(s / k)Частые ошибки
- Проверяют нечётность самого числа, а не последней цифры его записи в системе счисления с основанием 7.
- Используют деление / вместо остатка от деления %.
- Забывают обработать случай отсутствия подходящих чисел и получают деление на ноль.
- Выводят среднее арифметическое только целой частью.
Источник: Открытый банк ФИПИ
Похожие задания
16Напишите программу, которая в последовательности натуральных десятичных чисел определяет наибольший элемент…Задания открытого банка ФИПИ · 0A474B16Напишите программу, которая в последовательности натуральных десятичных чисел определяет сумму элементов…Задания открытого банка ФИПИ · 0B731216Напишите программу, которая в последовательности целых чисел определяет количество чисел, кратных 4 и…Задания открытого банка ФИПИ · 0B958016Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в…Задания открытого банка ФИПИ · 0F8FD516Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в…Задания открытого банка ФИПИ · 10198C16Напишите программу, которая в последовательности натуральных десятичных чисел определяет количество…Задания открытого банка ФИПИ · 11484C16Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в…Задания открытого банка ФИПИ · 12350E16Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в…Задания открытого банка ФИПИ · 1670DB
Нужен репетитор по информатике?
Посмотрите репетиторов, которые ведут занятия в Precettore, или оставьте заявку — подберём сами.
Готовьтесь к ОГЭ по информатике в Precettore
Варианты с автопроверкой, домашние задания от репетитора, онлайн-доска и разбор ошибок — в одном кабинете. Регистрация бесплатная.