print('Geekbrains. Факультет python-разработки')
print('Четверть 1. Основы языка Python')
print('Урок 2. Встроенные типы и операции с ними')
print('Домашнее задание 5.\nРеализовать структуру «Рейтинг», представляющую собой не возрастающий набор натуральных чисел.\n\
У пользователя необходимо запрашивать новый элемент рейтинга.\n\
Если в рейтинге существуют элементы с одинаковыми значениями, то новый элемент с тем же значением должен разместиться после них.')

for i in range(15,0):
    print(i)

rait = [7, 5, 3, 3, 2]
new = True
while new:
    new = input('Введите новый элемент: ')
# Проверка корректности ввода
    if not new.isdigit():
        print('Не корректный ввод. Введите целое число больше нуля.')
        continue
    elif int(new) == 0:
        print('Не корректный ввод. Введите целое число больше нуля.')
        continue   
    else:
# Поиск места и вставка нового элемента
        n = len(rait) - 1
        if int(new) in rait:  # элемент есть в списке
            while n >= 0:
                if int(new) == rait[n]:
                    rait.insert(n + 1, int(new))
                    break
                else:
                    n -= 1
        else:  # Элемента нету в списке
            if int(new) > rait[0]:  # Элемент больше первого (максимального) элемента
                rait.insert(0, int(new))
            else:  # 
                while n >= 0:
                    if int(new) < rait[n]:
                        rait.insert(n + 1, int(new))
                        break
                    else:
                        n -= 1
        print(f'{rait}')

print(f'\nBye!!!')