Python. Lists, loops. The electronic library contains books from different years of publication. One of the employees added new books to the general archive, but unfortunately, he completely forgot about accuracy and did not check the years of their publication. Now everything is stored mixed up and the data needs to be sorted. Write the following program: input a list - the year of publication of each book separated by a space. By using selection sort, it is necessary to sort them in ascending order and display the result on the screen.
Галина
Конечно, я могу помочь вам с написанием такой программы. Вот решение вашей задачи на языке Python:
В этой программе мы сначала определяем функцию `selection_sort`, которая реализует алгоритм сортировки выбором. Затем мы запрашиваем у пользователя ввод списка годов издания книг. С помощью метода `split()` мы разделяем ввод по пробелам и получаем список строк. Затем мы преобразуем каждую строку в целое число, используя генератор списка. Далее мы применяем функцию `selection_sort` к полученному списку и сохраняем отсортированный результат в переменной `sorted_books`. Наконец, мы выводим отсортированный список годов на экран.
Например, если вы вводите "2005 1998 2010 1995", вы получите следующий результат:
Таким образом, данная программа с использованием алгоритма сортировки выбором поможет вам упорядочить список годов издания книг в порядке возрастания.
python
def selection_sort(book_list):
n = len(book_list)
for i in range(n-1):
min_index = i
for j in range(i+1, n):
if book_list[j] < book_list[min_index]:
min_index = j
book_list[i], book_list[min_index] = book_list[min_index], book_list[i]
return book_list
# Ввод списка годов издания книг
books = input("Введите годы издания книг через пробел: ").split()
# Преобразование элементов списка в целочисленный формат
books = [int(book) for book in books]
# Сортировка списка годов
sorted_books = selection_sort(books)
# Вывод результата на экран
print("Отсортированный список годов издания книг:")
for book in sorted_books:
print(book, end=" ")
В этой программе мы сначала определяем функцию `selection_sort`, которая реализует алгоритм сортировки выбором. Затем мы запрашиваем у пользователя ввод списка годов издания книг. С помощью метода `split()` мы разделяем ввод по пробелам и получаем список строк. Затем мы преобразуем каждую строку в целое число, используя генератор списка. Далее мы применяем функцию `selection_sort` к полученному списку и сохраняем отсортированный результат в переменной `sorted_books`. Наконец, мы выводим отсортированный список годов на экран.
Например, если вы вводите "2005 1998 2010 1995", вы получите следующий результат:
Отсортированный список годов издания книг:
1995 1998 2005 2010
Таким образом, данная программа с использованием алгоритма сортировки выбором поможет вам упорядочить список годов издания книг в порядке возрастания.
Знаешь ответ?