Как можно решить эту задачу?

Вам нужна функция, которая принимает список чисел и возвращает кортеж из двух значений. Первым значением будет среднее значение всех чисел в списке, а вторым значением будет первое число в списке, которое больше среднего значения. Вот пример списка, с которым вы можете попробовать эту функцию:
test_list = [1, 2, 3, 4, 12, 322, 55, 66, 71, 80, 94, 6, 10, 32]
  • 12 октября 2023 г. 9:58
Ответы на вопрос 1
Одним из способов решения этой задачи является следующий алгоритм:

1. Создайте функцию, которая принимает список чисел в качестве аргумента.
2. Вычислите среднее значение списка чисел с помощью функции `sum()` и оператора деления `/`.
3. Создайте переменную `greater_than_avg`, которую установите изначально равной `None`. Эта переменная будет хранить первое число в списке, которое больше среднего значения.
4. Используя цикл `for`, переберите все числа в списке.
5. Внутри цикла, если текущее число больше среднего значения и переменная `greater_than_avg` все еще равна `None`, присвойте `greater_than_avg` значение текущего числа.
6. Верните кортеж из среднего значения и значения переменной `greater_than_avg`.

Вот пример кода, решающего эту задачу:

```python
def calculate_avg_and_greater_than_avg(lst):
    avg = sum(lst) / len(lst)
    greater_than_avg = None
    for num in lst:
        if num > avg and greater_than_avg is None:
            greater_than_avg = num
    return (avg, greater_than_avg)

test_list = [1, 2, 3, 4, 12, 322, 55, 66, 71, 80, 94, 6, 10, 32]
result = calculate_avg_and_greater_than_avg(test_list)
print(result)
```

Этот код должен вывести `(51.57142857142857, 322)`, так как среднее значение списка равно около 51.57, а первое число больше среднего значения - 322.
Похожие вопросы