Создавать и выполнять программы на универсальном языке программирования · 170 заданий
- Задание №16№16
Напишите программу, которая в последовательности натуральных десятичных чисел определяет количество элементов, запись которых в системе счисления с ос…
Программирование
- Задание №16№16
Напишите программу, которая в последовательности натуральных десятичных чисел определяет наибольший элемент, запись которого в системе счисления с осн…
Программирование
- Задание №16№16
Напишите программу, которая в последовательности натуральных десятичных чисел определяет среднее арифметическое элементов, запись которых в системе сч…
Программирование
- Задание №16№16
Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в шестнадцатеричной системе счисления трёхзначна…
Программирование
- Задание №16№16
Напишите программу, которая в последовательности натуральных десятичных чисел определяет количество элементов, запись которых в системе счисления с ос…
Программирование
- Задание №16№16
Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в восьмеричной системе счисления четырёхзначна и…
Программирование
- Задание №16№16
Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в восьмеричной системе счисления четырёхзначна и…
Программирование
- Задание №16№16
Напишите программу, которая в последовательности натуральных десятичных чисел определяет наибольший элемент, запись которого в системе счисления с осн…
Программирование
- Задание №16№16
Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в системе счисления с основанием 5 четырёхзначна…
Программирование
- Задание №16№16
Напишите программу, которая в последовательности натуральных десятичных чисел определяет количество элементов, запись которых в системе счисления с ос…
Программирование
- Задание №16№16
Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в шестнадцатеричной системе счисления трёхзначна…
Программирование
- Задание №16№16
Напишите программу, которая в последовательности натуральных десятичных чисел определяет среднее арифметическое элементов, запись которых в системе сч…
Программирование
Напишите программу, которая в последовательности натуральных десятичных чисел определяет среднее арифметическое элементов, запись которых в системе счисления с основанием 7 оканчивается нечётной цифрой. Если среди входных данных таких элементов нет, программа должна вывести «NO».
Программа получает на вход натуральные десятичные числа,
не превышающие 30 000, каждое в отдельной строке. Количество введённых чисел неизвестно, их последовательность заканчивается числом 0 (0 – признак окончания ввода, в последовательность не входит).
Программа должна вывести одно число – среднее арифметическое десятичных чисел (элементов последовательности), запись которых
в системе счисления с основанием 7 оканчивается нечётной цифрой,
или «NO», если среди входных данных таких элементов нет.
Пример работы программы
Входные данные | Выходные данные |
|---|---|
12 15 10 71 50 11 0 | 31.6 |
Решение
Решение.
Для решения этой задачи нам необходимо последовательно считывать числа до тех пор, пока не встретится 0. Для каждого числа нужно проверить условие: оканчивается ли его запись в системе счисления с основанием 7 на нечётную цифру.
1. Как определить последнюю цифру в системе счисления с основанием 7?
Последняя цифра числа в любой системе счисления с основанием n — это остаток от деления этого числа на n. В нашем случае нам нужно найти остаток от деления введённого числа на 7. Обозначим число как x, тогда последняя цифра в семеричной системе равна x(mod7).
2. Как проверить цифру на нечётность?
Цифра является нечётной, если остаток от её деления на 2 равен 1. То есть нам нужно проверить условие: (x(mod7))(mod2)=0.
3. Как вычислить среднее арифметическое?
Среднее арифметическое — это сумма всех подходящих чисел, делённая на их количество. Нам понадобятся две переменные-счётчика: sum_val (для накопления суммы) и count (для подсчёта количества подходящих чисел). Изначально обе переменные равны 0.
4. Алгоритм действий:
— Считываем первое число.
— Пока число не равно 0:
а) Находим остаток от деления числа на 7.
б) Если этот остаток нечётный, прибавляем само число к sum_val и увеличиваем count на 1.
в) Считываем следующее число.
— После окончания цикла проверяем: если count > 0, выводим результат деления sum_val / count. Если count равен 0, выводим «NO».
5. Пример из условия:
Числа: 12, 15, 10, 71, 50, 11.
- 12 в 7-ричной: 12=1⋅7+5. Последняя цифра 5 (нечётная). Подходит.
- 15 в 7-ричной: 15=2⋅7+1. Последняя цифра 1 (нечётная). Подходит.
- 10 в 7-ричной: 10=1⋅7+3. Последняя цифра 3 (нечётная). Подходит.
- 71 в 7-ричной: 71=10⋅7+1. Последняя цифра 1 (нечётная). Подходит.
- 50 в 7-ричной: 50=7⋅7+1. Последняя цифра 1 (нечётная). Подходит.
- 11 в 7-ричной: 11=1⋅7+4. Последняя цифра 4 (чётная). Не подходит.
Сумма: 12+15+10+71+50=158. Количество: 5.
Среднее: 158/5=31.6.
Программа на языке Python:
s = 0
n = 0
x = int(input())
while x != 0:
if (x % 7) % 2 != 0:
s += x
n += 1
x = int(input())
if n > 0:
print(s / n)
else:
print("NO")
Ответ: 31.6
Источник: ФИПИ