Что я неправильно написал в коде?
names = []
while True:
name = input()
if name == "и другие":
names.append(name)
names.sort()
for name in names:
print(name)
Вот условие:
С клавиатуры вводятся имена известных людей или брендов, с которыми сотрудничала компания "Вау Хауз". Каждое имя с новой строки. Символ окончания ввода данных – строка "и другие".
Отсортируйте список по алфавиту и выведите в столбик на экран.
Формат входных данных
Вводится несколько строк, символ окончания ввода – строка "и другие".
Формат выходных данных
Выведите в столбик на экран новый список.
Примеры
ВХОДНЫЕ ДАННЫЕВЫХОДНЫЕ ДАННЫЕгучи пик габана эпл и другие габана гучи пик эпл сбербанк тинькофф вкусвилл перекресток коммунарка и другие вкусвилл коммунарка перекресток сбербанк тинькофф
Информатика 9 класс Программирование ошибка в коде сортировка списка ввод данных имена известных людей программа на Python Новый
Привет! Давай посмотрим на твой код. Есть несколько моментов, которые нужно исправить:
Условие выхода из цикла: У тебя в коде проверка if name == "и другие":
добавляет строку "и другие" в список, но, по идее, нужно завершить ввод, не добавляя эту строку. Нужно использовать break
, чтобы выйти из цикла, когда введено "и другие".
Сортировка списка: Сортировку нужно делать после завершения ввода, а не внутри цикла. Иначе каждый раз, когда ты вводишь новое имя, список будет сортироваться, что не нужно.
Форматирование кода: Убедись, что отступы сделаны правильно, чтобы избежать ошибок синтаксиса.
Вот исправленный вариант твоего кода:
names = []
while True:
name = input()
if name == "и другие":
break
names.append(name)
names.sort()
for name in names:
print(name)
Теперь код будет работать правильно: он будет собирать имена, пока не введут "и другие", после чего отсортирует их и выведет на экран. Надеюсь, это поможет! Если будут еще вопросы, не стесняйся спрашивать!