Форум программистов, компьютерный форум, киберфорум
Python: Решение задач
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 19.08.2024
Сообщений: 8

Сортировка списка

19.08.2024, 20:13. Показов 301. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет!
Есть умная голова которая подскажет мне с небольшой головоломкой?

В программе есть функция которая берет список как аргумент и возращает список отсортированным. Но в функции есть ошибки которые нужно исправить. Нельзя удалять или дописывать строки кода. Только изменить и объяснить почему
Заранее благодарен.
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
def sort_funk(lista):
    i=0
    while i > len(lista)-1:
        if lista[i] > lista[i-1]:
            x=lista[i]
            lista[i] = lista[i+1]
            lista[i+1] = lista[i]
            i=0
            continue
        else:
            i+=1
    return lista
test_lista = [12, 5, 13, 8, 9, 65]
print(f"ursprunglig lista {test_lista}")
sort_funk(test_lista)
print(f"sorterad lista {test_lista}")
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
19.08.2024, 20:13
Ответы с готовыми решениями:

Создание списка, вывод списка и сортировка
Базовый класс содержит три метода Создание списка, вывод списка и сортировка Необходимо создать класс-наследник с методом сортировка ...

Сортировка списка
Доброго времени суток!Почему при таком коде выводит (None) fruits = {'apple', 'banana', 'cherry', 'avocado', 'pineapple',...

Сортировка списка
Напишите функцию sorting(), сортирующую значения списка в переменной data. Функция вызывается без аргументов, ничего не выводит и ничего не...

1
 Аватар для Storm Screamer
4896 / 1462 / 117
Регистрация: 21.04.2013
Сообщений: 8,773
19.08.2024, 20:21
Цитата Сообщение от Sigge Посмотреть сообщение
Но в функции есть ошибки которые нужно исправить
Ошибки:

1. while i > len(lista) - 1 → while i < len(lista) - 1
В оригинальном коде цикл не выполняется, потому что условие i > len(lista) - 1 является ложным с самого начала (i=0). Исправлено на i < len(lista) - 1, чтобы цикл выполнялся, пока индекс i меньше последнего допустимого индекса.

2. if lista[i] > lista[i-1] → if lista[i] > lista[i+1]
В оригинальном коде сравнивался текущий элемент с предыдущим (i-1), что неправильно. Мы хотим сравнивать текущий элемент с последующим (i+1), чтобы определить, нужно ли их поменять местами.

3. lista[i + 1] = lista[i] → lista[i + 1] = x
В оригинальном коде переменная x сохраняла значение текущего элемента lista[i], но вместо использования этого значения происходило присваивание того же значения обеим позициям lista[i] и lista[i+1], что неверно. Исправлено так, чтобы lista[i + 1] получало значение переменной x.

Исправленный код:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
def sort_funk(lista):
    i = 0
    while i < len(lista) - 1:  # Изменение условия на '<'
        if lista[i] > lista[i + 1]:  # Изменение 'i-1' на 'i+1'
            x = lista[i]
            lista[i] = lista[i + 1]
            lista[i + 1] = x  # Замена 'lista[i+1] = lista[i]' на 'x'
            i = 0
            continue
        else:
            i += 1
    return lista
 
test_lista = [12, 5, 13, 8, 9, 65]
print(f"ursprunglig lista {test_lista}")
sort_funk(test_lista)
print(f"sorterad lista {test_lista}")
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
19.08.2024, 20:21
Помогаю со студенческими работами здесь

Сортировка выбором, Сортировка простыми вставками, Сортировка пузырьком, Сортировка слиянием, Быстрая сортировка Хоара
Имеется список товаров, хранящихся на базе. Каждая строка этого списка содержит: инвентарный номер товара; количество видов этого товара;...

Сортировка списка людей
Создать функцию (сортировки людей по классу) под названием sort_people(people), которая получает список людей и возвращает отсортированный...

Быстрая сортировка списка
Разработайте функции для выполнения следующих операций со списками: 1. Быстрая сортировка;

Сортировка двумерного списка
Для примера что бы отсортировать список: lst = В том порядке в котором идут ноты надо: do = sorted(lst, key=do.index) #...

Сортировка списка людей
Нужно составить сортировку каталога людей по дате рождения. Каждый человек входит в группу Person, который имеет first_name (имя),...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru