Python
Написать функцию, которая предложит пользователю ввести 10 чисел и затем одну из трех операций, которую нужно будет выполнить:

avg - среднее значение

min - минимальное число

max - максимальное число

Программа должна принять ввод пользователя и выполнить операцию согласно выбранной команде.

Пример:

input 10 numbers:
>1

>2

>3

>4

>5

>6

>7

>8

>9

>0


input one of command : (avg, min, max):

>max

9

p.s Символом > обозначен пользовательский ввод.

Ответы

Ответ дал: Zergloing
0

Ответ:

def avg(n):

   return sum(n) / len(n)

q = list()

print('input 10 numbers: ')

for _ in range(10):

   q.append(int(input()))

print('input one of command: ')

tr = input()

if tr == 'avg':

   print(avg(q))

elif tr == 'min':

   print(min(q))

elif tr == 'max':

   print(max(q))

else:

   print('Error.')

Объяснение:

q - список, куда складываем все введённые числа.

В цикле for пользователь вводит числа (каждое на новой строке, как в примере) и они добавляются в список.

tr - переменная для хранения команды.

def avg(n) - это функция для подсчёта среднего значения, вызывается только при вводе пользователем команды avg.

Дальше проверяем, еслои пользователь вводит avg, то в функцию avg передаём список.

Если min, то используем встроенную функцию min для поиска минимального значения в списке.

Если max, то используем встроенную функцию max для поиска максимального значения в списке.

Если команда будет введена иная, то выводим ошибку.


Zergloing: Если мой ответ вас удовлетворил, то, пожалуйста, отметьте его как "Лучший ответ".
Ответ дал: b4work
0

Ответ:

def number():

numbers = []

sum = 0

for i in range(10):

num = int(input())

numbers.append(num)

numbers.sort()

do = input('input one of command : (avg, min, max):\n')

if do == 'avg':

for n in numbers:

sum = sum + n

print(sum / 10)

elif do == 'min':

print(numbers[0])

elif do == 'max':

print(numbers[9])

Объяснение:

Для ввода 10 чисел был использован цикл range, после мы сортируем от меньшего к большего с помощью .sort(), дальше использовал конструкцию if-elif-elif для выбора фунцкии, для получения min/max использовал получение елемента списка, для avg в переменную sum через цикл for добавил все цифры и поделил на 10.

Приложения:
Вас заинтересует