Создавать и выполнять программы на универсальном языке программирования · 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
Напишите программу, которая в последовательности натуральных десятичных чисел определяет среднее арифметическое элементов, запись которых в системе сч…
Программирование
Напишите программу, которая в последовательности натуральных чисел находит среднее арифметическое чисел, оканчивающихся на единицу, или сообщает, что таких чисел нет. Программа получает на вход целые числа, количество введённых чисел неизвестно, последовательность чисел заканчивается числом 0 (0 – признак окончания ввода).
Количество чисел не превышает 100. Введённые числа по модулю не превышают 300.
Программа должна вывести среднее арифметическое чисел, оканчивающихся на единицу, или вывести NO, если таких чисел в последовательности нет.
Пример работы программы:
Входные данные | Выходные данные |
|---|---|
21 30 11 0 | 16.0 |
16 5 0 | NO |
Решение
Решение.
Для решения этой задачи нам необходимо последовательно считывать числа до тех пор, пока не встретится 0. В процессе ввода мы будем отбирать числа, которые оканчиваются на 1, подсчитывать их количество и находить их сумму.
Шаг 1: Инициализация переменных.
Нам понадобятся две переменные-счетчика:
1) sum_val=0 — для накопления суммы подходящих чисел;
2) count=0 — для подсчета количества таких чисел.
Шаг 2: Организация цикла ввода.
Так как количество чисел заранее неизвестно, используем цикл while. Внутри цикла считываем очередное число x. Если x=0, цикл прекращается.
Шаг 3: Проверка условия.
Чтобы проверить, оканчивается ли число на 1, нужно найти остаток от его деления на 10.
Условие: x(mod10)=1.
Если условие выполняется, прибавляем x к sum_val и увеличиваем count на 1.
Шаг 4: Вычисление среднего арифметического.
После завершения цикла проверяем значение count.
Если count>0, то вычисляем среднее арифметическое по формуле: avg=sum_val/count.
Если count=0, это означает, что подходящих чисел не было, и нужно вывести "NO".
Пример реализации на языке Python:
sum_val = 0
count = 0
x = int(input())
while x != 0:
if x % 10 == 1:
sum_val += x
count += 1
x = int(input())
if count > 0:
print(sum_val / count)
else:
print("NO")
Разберем первый пример: числа 21, 30, 11, 0.
1) 21 оканчивается на 1. sum_val=21, count=1.
2) 30 не оканчивается на 1.
3) 11 оканчивается на 1. sum_val=21+11=32, count=2.
4) Ввод 0 — конец.
Среднее арифметическое: 32/2=16.0.
Ответ: Программа выводит среднее арифметическое подходящих чисел или NO.
Источник: ФИПИ