Напишите программу на языке Python, которая будет находить сумму двух наибольших и двух наименьших чисел

Напишите программу на языке Python, которая будет находить сумму двух наибольших и двух наименьших чисел в последовательности целых чисел. Программа должна выводить эти две суммы в указанном порядке. Входные данные для программы - последовательность целых чисел. Количество введенных чисел в последовательности неизвестно, и последовательность заканчивается числом 0 (0 — сигнал остановки ввода и не является частью последовательности). Количество чисел в последовательности не превышает 1000, и числа сами по модулю не превышают 30 000. В последовательности всегда будет как минимум два числа.
Щавель

Щавель

Конечно, я могу помочь с написанием программы на языке Python для решения задачи.

Вот код программы:

python
# Инициализируем переменные для наибольших и наименьших чисел
largest1 = largest2 = smallest1 = smallest2 = float("-inf")

# Читаем числа из входной последовательности
while True:
num = int(input("Введите число: "))

if num == 0:
break

if num > largest1:
# Обновляем самое большое число, сдвигая предыдущее на второе место
largest2 = largest1
largest1 = num
elif num > largest2:
# Обновляем второе самое большое число
largest2 = num

if num < smallest1:
# Обновляем самое маленькое число, сдвигая предыдущее на второе место
smallest2 = smallest1
smallest1 = num
elif num < smallest2:
# Обновляем второе самое маленькое число
smallest2 = num

# Находим суммы двух наибольших и двух наименьших чисел
sum_largest = largest1 + largest2
sum_smallest = smallest1 + smallest2

# Выводим результаты
print("Сумма двух наибольших чисел:", sum_largest)
print("Сумма двух наименьших чисел:", sum_smallest)


Данный код читает последовательность чисел, вводимых пользователем, пока не будет введен ноль. При каждом новом числе программа обновляет значения переменных для двух наибольших и двух наименьших чисел. После окончания ввода программа выводит суммы этих чисел.

Надеюсь, этот ответ ясен и понятен школьнику. Если у вас есть вопросы или нужно больше пояснений, пожалуйста, сообщите.
Знаешь ответ?
Задать вопрос
Привет!
hello