Найти тему
Андрей Немериков

Яндекс Функции

Статистики

Напишите функцию print_statistics(arr), которая принимает список целых чисел и печатает несколько так называемых статистик этого списка: число элементов, среднее значение, минимальный и максимальный элемент в списке, медиану списка.

Медианой называется число, больше которого ровно половина списка. В отсортированном списке из нечетного числа элементов он находится ровно посередине. Если элементов в списке четное число, то медианой является любое из значений, лежащих между двумя центральными элементами. Обычно в таких случаях выбирают среднее значение от двух центральных элементов. Мы просим вывести его.

Для пустого списка вместо всех статистик выведите нули.

При вычислении среднего значения, воспользуйтесь функцией, написанной вами ранее специально для этой цели. Одну собственную функцию можно вызывать из другой. Также рекомендуем написать отдельную функцию для вычисления медианы.

Например, вызов print_statistics([3,5,8,4]) должен последовательно распечатать на экране все статистики:

def print_statistics(arr):
s = []
t = len(arr)
if len(arr) == 0:
print('0\n' * 5)
else:
print(len(arr)), print(sum(arr) / len(arr)), print(min(arr)), print(max(arr))
for i in range(t):
k = min(arr)
s.append(k)
arr.remove(k)
if t % 2 == 1:
f = len(s) // 2
print(s[f])
else:
p = len(s) // 2
p1 = len(s) // 2
# print(s[p-1],s[p1])
h = (s[p - 1] + s[p1]) / 2
print(h)

Многие ответы на Яндекс здесь https://t.me/otvetinalms

Помощь при решении задач