PYTHON/Напишите программу, которая в последовательности натуральных чисел находит среднее арифметическое чисел, кратных 8, или сообщает, что таких чисел нет
(выводит «NO»). Программа получает на вход количество чисел в
последовательности, а затем сами числа.
Программа должна вывести среднее арифметическое чисел, кратных 8, или вывести «NO», если таких чисел нет
n = int(input())
a = list(map(int, input().split()))
num_sum = 0
num_count = 0
for x in a:
if x % 8 == 0:
num_sum += x
num_count += 1
if num_count:
print(num_sum/num_count)
else:
print('NO')
Первым шагом будет ввод данных.
Мы должны запросить количество чисел в последовательности у пользователя. Давайте создадим переменную n и присвоим ей значение, введенное пользователем:
```python
n = int(input("Введите количество чисел: "))
```
Затем нам нужно ввести сами числа. Давайте создадим пустой список, который будет содержать числа последовательности. Затем мы попросим пользователя ввести каждое число, добавим его в список:
```python
numbers = []
for i in range(n):
num = int(input("Введите число: "))
numbers.append(num)
```
Теперь у нас есть список чисел, и мы можем переходить к следующему шагу - поиск чисел, кратных 8.
Для этого создадим переменную `sum_` (начальное значение равно 0), которая будет хранить сумму чисел, кратных 8, и переменную `count`, которая будет хранить количество таких чисел (начальное значение равно 0). Затем мы будем итерировать по каждому числу в списке и проверять, кратно ли оно 8. Если оно кратно 8, мы увеличиваем `sum_` на это число и увеличиваем `count` на 1:
```python
sum_ = 0
count = 0
for num in numbers:
if num % 8 == 0:
sum_ += num
count += 1
```
Теперь мы нашли сумму чисел, кратных 8, и количество таких чисел. Однако нам нужно учесть, что возможно не было найдено ни одно число, кратное 8. Для этого добавим условие, которое будет проверять значение `count`. Если `count` равно 0, то мы выводим "NO". В противном случае, мы вычисляем среднее арифметическое, которое равно `sum_` / `count`:
```python
if count == 0:
print("NO")
else:
average = sum_ / count
print("Среднее арифметическое:", average)
```
Итак, вот полная программа:
```python
n = int(input("Введите количество чисел: "))
numbers = []
for i in range(n):
num = int(input("Введите число: "))
numbers.append(num)
sum_ = 0
count = 0
for num in numbers:
if num % 8 == 0:
sum_ += num
count += 1
if count == 0:
print("NO")
else:
average = sum_ / count
print("Среднее арифметическое:", average)
```
Я надеюсь, что это решение понятно и информативно. Если у вас возникнут вопросы, не стесняйтесь задавать!