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

Пользователь вводит последовательность чисел. Признак конца ввода 0.Определить 3 наибольших числа в последовательности.НА ЯЗЫКЕ ПИТОН .ШКОЛЬНЫЙ УРОВЕНЬ.ЖЕЛАТЕЛЬНО С ПОЯСНЕНИЯМИ!

Ответы

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

m1=0

m2=0

m3=0

x=10

while x!=0:

x=int(input())#вводим число

if m1<x:  

 m3=m2

 m2=m1

 m1=x

elif x>m2 and  x>m3 and x<m1:

 m3=m2

 m2=x

elif x<m2 and x<m1 and x>m3:

 m3=x

print(m1,m2,m3,sep=" ")

вот std алгоритм заключается в том что у нас три переменных и мы после нахождения максимума все переменные сдвигаем назад то есть m1 становится m2, m2 становится m3 а m1 присваивается новый максимум  и так же тут случаи когда m2 или m3 больше старых но мешьше m1 он тогда просто меняет значение именно той переменной которой он больше

Похожие вопросы
Предмет: История, автор: tymurtsytovich56