Melnik Kaveshnikova1746
?>

Вводится несколько строк (не более 20), в которых сначала записаны инициалы и фамилии работников фирмы. Ввод заканчивается пустой строкой. Отсортировать строки в алфавитном порядке по фамилии. Пример: Введите ФИО: А.Г. Урядников Б.В. Тепловозов В.Д. Арбузов Список в алфавитном порядке: В.Д. Арбузов Б.В. Тепловозов А.Г. Урядников C++

Информатика

Ответы

Nikol27051986
Добрый день, дорогой ученик!

Чтобы решить данную задачу, нам потребуется использовать сортировку строк. В Python мы можем использовать метод сортировки списка `sort()`, и он должен быть нам весьма полезен.

Давай-ка начнем с ввода строк от пользователя. Для этого мы можем использовать цикл `while`, который будет выполняться до тех пор, пока пользователь не введет пустую строку. В каждой итерации цикла мы будем запрашивать у пользователя ФИО и сохранять его в списке. В итоге у нас получится список, содержащий все ФИО работников фирмы.

```python
# Создаем пустой список для хранения ФИО
fio_list = []

# Запрашиваем ФИО от пользователя
fio = input("Введите ФИО: ")

# Цикл для ввода ФИО пользователем (пока не будет введена пустая строка)
while fio != "":
fio_list.append(fio)
fio = input("Введите ФИО: ")
```

Теперь у нас есть список `fio_list`, содержащий все введенные ФИО. Для того чтобы отсортировать его в алфавитном порядке по фамилии, мы можем использовать метод `sort()` для списка. Однако, чтобы правильно сортировать строки с ФИО, нам потребуется задать необычный ключ сортировки.

У каждой строки ФИО есть формат "Инициалы Фамилия". Мы хотим отсортировать по фамилии, поэтому нужно указать методу `sort()` сортировать по отдельной части строки - фамилии. Для этого нам потребуется использовать функцию `lambda`, которая будет принимать строку ФИО и возвращать только фамилию (последнюю часть строки после пробела).

```python
# Сортировка списка по фамилии
fio_list.sort(key=lambda x: x.split()[1])
```

Теперь список `fio_list` отсортирован в алфавитном порядке по фамилии. Осталось только вывести его содержимое.

```python
# Вывод отсортированного списка
print("Список в алфавитном порядке:")
for fio in fio_list:
print(fio)
```

Таким образом, весь код для решения данной задачи выглядит следующим образом:

```python
# Создаем пустой список для хранения ФИО
fio_list = []

# Запрашиваем ФИО от пользователя
fio = input("Введите ФИО: ")

# Цикл для ввода ФИО пользователем (пока не будет введена пустая строка)
while fio != "":
fio_list.append(fio)
fio = input("Введите ФИО: ")

# Сортировка списка по фамилии
fio_list.sort(key=lambda x: x.split()[1])

# Вывод отсортированного списка
print("Список в алфавитном порядке:")
for fio in fio_list:
print(fio)
```

Надеюсь, моё пояснение было понятным и помогло тебе понять, как решить данную задачу. Если у тебя остались вопросы, не стесняйся задавать их! Я всегда готов помочь.

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Вводится несколько строк (не более 20), в которых сначала записаны инициалы и фамилии работников фирмы. Ввод заканчивается пустой строкой. Отсортировать строки в алфавитном порядке по фамилии. Пример: Введите ФИО: А.Г. Урядников Б.В. Тепловозов В.Д. Арбузов Список в алфавитном порядке: В.Д. Арбузов Б.В. Тепловозов А.Г. Урядников C++
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

Лилин1079
fouettearoma
skyey
alekseysokolov29816
Lazar
Ter-Pogosov_Vasilevna
kulinarprotv
galinasemyan689
ser7286
oksanata777
teta63
agusarevich283
ver2bit29
ГармаеваЕкатерина1637
Воздвиженская