Задание 16 ОГЭ по информатике · 026108

ПовышеннаяКЭС 3.2
Напишите программу, которая в последовательности натуральных десятичных чисел определяет среднее арифметическое элементов, запись которых в системе счисления с основанием 7 оканчивается цифрой 5. Если среди входных данных таких элементов нет, программа должна вывести «NO».
Программа получает на вход натуральные десятичные числа, не превышающие 30 000, каждое в отдельной строке. Количество введённых чисел неизвестно, их последовательность заканчивается числом 0 (0 – признак окончания ввода, в последовательность не входит).
Программа должна вывести одно число – среднее арифметическое десятичных чисел (элементов последовательности), запись которых в 7-ричной системе счисления оканчивается цифрой 5, или «NO», если среди входных данных таких элементов нет.
Пример работы программы
Входные данныеВыходные данные
12 14 20 68 25 040
Показать ответ
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)
  1. Как определить последнюю цифру записи числа в системе счисления с основанием 7, не переводя число полностью?
  2. Последняя цифра записи числа в системе счисления с основанием 7 равна остатку от деления этого числа на 7. Отбирайте числа, для которых n mod 7=5.
  3. Накопите сумму подходящих чисел и их количество. После завершения ввода выведите суммаколичество, а при нулевом количестве выведите `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
Частые ошибки
  • Проверяют делимость числа на 7 вместо проверки остатка 5.
  • Включают завершающий ноль в сумму или количество.
  • Выводят `NO` только при сумме, равной нулю, вместо проверки количества подходящих чисел.
  • Забывают прочитать следующее число внутри цикла.

Источник: Открытый банк ФИПИ

Похожие задания

16Напишите программу, которая в последовательности натуральных десятичных чисел определяет среднее…Задания открытого банка ФИПИ · 01450316Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в…Задания открытого банка ФИПИ · 01BD1316Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в…Задания открытого банка ФИПИ · 01BE0116Напишите программу, которая в последовательности целых чисел определяет количество чётных чисел, кратных 7.…Задания открытого банка ФИПИ · 02A26716Напишите программу, которая в последовательности натуральных чисел определяет максимальное число, кратное 4.…Задания открытого банка ФИПИ · 04658716Напишите программу, которая в последовательности натуральных чисел определяет сумму чисел, оканчивающихся на…Задания открытого банка ФИПИ · 06D42C16Напишите программу, которая в последовательности целых чисел вычисляет сумму всех чисел, которые кратны 4 или…Задания открытого банка ФИПИ · 08A5D816Напишите программу, которая в последовательности натуральных десятичных чисел определяет наибольший элемент…Задания открытого банка ФИПИ · 0A474B

Нужен репетитор по информатике?

Посмотрите репетиторов, которые ведут занятия в Precettore, или оставьте заявку — подберём сами.

Репетиторы по информатике

Подбор репетитора

Напишите, что нужно, — команда Precettore подберёт репетитора и свяжется с вами.

Готовьтесь к ОГЭ по информатике в Precettore

Варианты с автопроверкой, домашние задания от репетитора, онлайн-доска и разбор ошибок — в одном кабинете. Регистрация бесплатная.