Предмет: Информатика, автор: uka62155

1) Сгенерировать список из 50 случайных элементов, значения от 1 до 10 (через бибилотеку random),
после чего вывести среднее геометрическое этих элементов,
сумму всех чётных элементов и если сумма чётных элементов меньше 240, вывести сообщение "Сумма четных элементов равна:****". Вместо звездочек должно быть значение суммы, посчитанное ранее.
2) Написать программу, которая на вход получает фразу (предложение из, как минимум трёх слов русского языка), если количество букв меньше 10, то выводится "Хорошо", если меньше выводится "Не хорошо".
!Python!

Ответы

Автор ответа: TomasSmZRs
0

Ответ: См. снимки экрана (код в объяснении)

Объяснение:

Первая программа:

from random import randint

def geo_mean(arr):

   m = 1

   for x in arr:

       m *= x

   res = m ** (1 / len(arr))

   return res

def even_numb(arr):

   sum = 0

   for x in arr:

       if not x % 2:

           sum += x

   return sum

   res = m ** (1 / len(arr))

   return res

arr = []

for i in range(50):

   arr.append(randint(1, 10))  # Геренрирование случайных чисел

print(arr, '\n')

print("G =", geo_mean(arr))  # Среднее геометрическое

if even_numb(arr) < 240:  # Сумма четных чисел

   print("Сумма четных элементов равна", even_numb(arr))

Вторая программа:

def numb_words(s):

   s = s.split()

   l = len(s)

   if l >= 3:

       return True

def numb_letters(a):

   return len(a) - a.count(' ')

a = input("Введите фразу: ")

if (numb_words(a)):

   if numb_letters(a) < 10:

       print("Хорошо")

   else:

       print("Не хорошо")

Приложения:
Похожие вопросы