-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathL2T5.py
More file actions
36 lines (34 loc) · 2.13 KB
/
L2T5.py
File metadata and controls
36 lines (34 loc) · 2.13 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
# Урок 2. Практическое задание 5.
# ФИО: Артур Назарян
# Курс: Основы языка Python
# Факультет: Geek University Python-разработки
#
# Реализовать структуру «Рейтинг», представляющую собой не возрастающий набор
# натуральных чисел. У пользователя необходимо запрашивать новый элемент рейтинга.
# Если в рейтинге существуют элементы с одинаковыми значениями, то новый элемент
# с тем же значением должен разместиться после них.
# Подсказка. Например, набор натуральных чисел: 7, 5, 3, 3, 2.
# Пользователь ввел число 3. Результат: 7, 5, 3, 3, 3!, 2.
# Пользователь ввел число 8. Результат: 8!, 7, 5, 3, 3, 2.
# Пользователь ввел число 1. Результат: 7, 5, 3, 3, 2, 1!.
# Набор натуральных чисел можно задать непосредственно в коде, например,
# my_list = [7, 5, 3, 3, 2].
# Получилось больше 5ти строк, но, надеюсь, что алгоритм правильный.
my_list = [7, 5, 3, 3, 2]
my_list_copy = my_list.copy() # копия списка для наглядного отслеживания работы программы
while True:
number = input('Введите число (либо любой символ для выхода): ')
if not number.isdigit():
break
if int(number) > max(my_list):
my_list.insert(0, int(number))
my_list_copy.insert(0, number)
else:
for i in range(len(my_list), 0, -1):
if int(number) <= my_list[i - 1]:
my_list.insert(i, int(number))
my_list_copy.insert(i, number)
break
print(my_list)
print(my_list_copy)
print('Программа завершила свою работу. Спасибо!')