Создавать и выполнять программы на универсальном языке программирования · 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
Напишите программу, которая в последовательности натуральных десятичных чисел определяет среднее арифметическое элементов, запись которых в системе сч…
Программирование
Напишите программу, которая в последовательности натуральных десятичных чисел определяет среднее арифметическое элементов, запись которых в системе счисления с основанием 5 оканчивается нечётной цифрой. Если среди входных данных таких элементов нет, программа должна вывести «NO».
Программа получает на вход в первой строке натуральное число – количество чисел N (3 ≤ N ≤ 10000), затем N натуральных чисел,
не превышающих 30 000, каждое в отдельной строке.
Программа должна вывести одно число – среднее арифметическое десятичных чисел (элементов последовательности), запись которых
в 5-ричной системе счисления оканчивается нечётной цифрой, или «NO», если среди входных данных таких элементов нет.
Пример работы программы
Входные данные | Выходные данные |
|---|---|
6 12 15 10 71 50 11 | 41 |
Решение
Решение.
Для решения этой задачи нам необходимо последовательно обработать каждое число из входного набора, проверить условие и вычислить среднее арифметическое подходящих чисел.
Шаг 1: Разбор условия.
Нам нужно найти числа, запись которых в системе счисления с основанием 5 оканчивается нечётной цифрой.
Вспомним правило: последняя цифра числа в системе счисления с основанием n — это остаток от деления этого числа на n.
Следовательно, последняя цифра в 5-ричной записи числа x — это x(mod5).
Эта цифра должна быть нечётной, то есть остаток от деления (x(mod5)) на 2 должен быть равен 1.
Шаг 2: Алгоритм решения.
1. Сначала считываем количество чисел N.
2. Заводим две переменные-счётчика: sum_val для накопления суммы подходящих чисел и count для их подсчёта. Изначально обе равны 0.
3. В цикле от 1 до N считываем очередное число x.
4. Проверяем условие: если (x(mod5))(mod2)=0, то:
— прибавляем x к sum_val;
— увеличиваем count на 1.
5. После завершения цикла проверяем, нашли ли мы хотя бы одно число (count>0).
6. Если нашли, выводим результат деления sum_val/count. Если нет — выводим «NO».
Шаг 3: Пример реализации на языке Python.
n = int(input())
sum_val = 0
count = 0
for _ in range(n):
x = int(input())
if (x % 5) % 2 != 0:
sum_val += x
count += 1
if count > 0:
print(sum_val / count)
else:
print("NO")
Шаг 4: Проверка на примере.
Входные числа: 12,15,10,71,50,11.
1. 12(mod5)=2 (чётная) — пропускаем.
2. 15(mod5)=0 (чётная) — пропускаем.
3. 10(mod5)=0 (чётная) — пропускаем.
4. 71(mod5)=1 (нечётная) — подходит. sum_val=71, count=1.
5. 50(mod5)=0 (чётная) — пропускаем.
6. 11(mod5)=1 (нечётная) — подходит. sum_val=71+11=82, count=2.
Среднее арифметическое: 82/2=41.
Ответ: 41
Источник: ФИПИ