Почему функция возвращает None в Python?

Мне нужно было решить задачу - Даны три числа. Найдите те два из них, сумма которых наибольшая. Вроде бы правильно её решил, но код возвращает в место двух максимальных чисел None.

Код:

a = int(input('Введите первое число: '))
b = int(input('Введите второе число: '))
c = int(input('Введите третье число: '))

def maximum(a, b, c):
    if a > b:
        if a > c:
            if c > b:
                return "Два максимальных элемента: " + str(a) + ", " + str(c)

print(maximum(a, b, c))

Помогите плз)


Ответы (2 шт):

Автор решения: Евгений
a = int(input('Введите первое число: '))
b = int(input('Введите второе число: '))
c = int(input('Введите третье число: '))

def maximum(a, b, c):
    l = [a, b, c]
    minimum = 0

    if l[1] < l[minimum]:
        minimum = 1
    if l[2] < l[minimum]:
        minimum = 2

    if minimum == 0:
        return l[1], l[2]
    if minimum == 1:
        return l[0], l[2]
    if minimum == 2:
        return l[0], l[1]

print('Два максимальных элемента: {0}, {1}'.format(*maximum(a, b, c)))
→ Ссылка
Автор решения: Vitek_228_69

Самое короткое решение

def maximum(*args):
    return sorted(args)[1:]
→ Ссылка