Тема 16. Написание программы на универсальном языке

16.01 Создание и выполнение программы на универсальном языке программирования

Вспоминай формулы по каждой теме
Решай новые задачи каждый день
Вдумчиво разбирай решения
ШКОЛКОВО.
Готовиться с нами - ЛЕГКО!
Подтемы раздела написание программы на универсальном языке
Решаем задачу:

Ошибка.
Попробуйте повторить позже

Задача 1#134173

Напишите программу, которая в последовательности натуральных десятичных чисел определяет среднее арифметическое элементов, запись которых в системе счисления с основанием 7 оканчивается цифрой 4. Если среди входных данных таких элементов нет, программа должна вывести «NO».

Программа получает на вход натуральные десятичные числа, не превышающие 30 000, каждое в отдельной строке. Количество введённых чисел неизвестно, их последовательность заканчивается числом 0 (0 – признак окончания ввода, в последовательность не входит).

Программа должна вывести одно число – среднее арифметическое десятичных чисел (элементов последовательности), запись которых в 7-ричной системе счисления оканчивается цифрой 4, или «NO», если среди входных данных таких элементов нет.

Пример работы программы:

Входные данные Выходные данные
11
25
30
14
54
0
18

Источники: Банк ФИПИ

Показать ответ и решение

Идея решения:

Идея решения заключается в том, что в отдельные переменные будет записано количество чисел в последовательности и сумма чисел, оканчивающихся на 4 в 7сс. Для того чтобы определить такое число будет написан цикл, который будет выполняться пока текущее число последовательности не равно 0 и внутри него мы будем проверять по одному числу из последовательности, что остаток при делении на 7 равен 4, в таком случае, число в семиричной записи оканчивается на 4.

sm = 0 # сумма чисел последовательности, оканчивающихся на 4 в 7сс
c = 0 # количество чисел последовательности, оканчивающихся на 4 в 7сс
x = int(input()) # считываем первое число из последовательности
while x != 0: # пока число из последовательности не равно 0
    if x % 7 == 4: # если остаток при делении на 7 равен 4
        sm += x # увеличиваем сумму чисел на значение x
        c += 1 # увеличиваем счётчик на 1
    x = int(input()) # считываем следующее число из последовательности
if c == 0: # если счётчик равен 0
    print("NO") # вывод NO
else: # в ином случае
    print(sm/c) # вывод среднего арифметического значения

Ответ:

Специальные программы

Все специальные программы

Программа
лояльности v2.0

Приглашай друзей в Школково и получай вознаграждение до 10%!

Крути рулетку
и выигрывай призы!

Крути рулетку и покупай курсы со скидкой, которая привязывается к вашему аккаунту.

Бесплатное онлайн-обучение

Для школьников из приграничных территорий России, проживающих в ДНР, ЛНР, Херсонской, Запорожской, Белгородской, Курской, Брянской областях и Крыму.

Налоговые вычеты

Узнай, как получить налоговый вычет при оплате обучения в «Школково».

Специальное предложение
для учителей

Бесплатный доступ к любому курсу подготовки к ЕГЭ, ОГЭ и олимпиадам от «Школково». Мы с вами делаем общее и важное дело, а потому для нас очень значимо быть чем-то полезными для учителей по всей России!

Вернём деньги за курс
за твою сотку на ЕГЭ

Сдать экзамен на сотку и получить обратно деньги за подготовку теперь вполне реально!

cyberpunkMouse
cyberpunkMouse
Рулетка
Вы можете получить скидку в рулетке!