Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.82/11: Рейтинг темы: голосов - 11, средняя оценка - 4.82
1 / 1 / 0
Регистрация: 02.11.2021
Сообщений: 31

Тестирование правильности алгоритма вставками

10.11.2021, 16:06. Показов 2436. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
В ходе изучения алгоритмов из разных источников натолкнулся на следующую программу:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
def insert_sort():
    """сортировка списка вставками"""
      for top in range(1, len(a)):
        i = top
        while i > 0 and a[i - 1] > a[i]:
            a[i], a[i - 1] = a[i - 1], a[i]  # поменять местами
            i -= 1
 
 
def test_sort(sort_algorithm):  #
    print("Тестируем алгоритм: ", sort_algorithm.__doc__) # ?? про извлеч-е строк документации
    print("test_case #1: ", end="")
    a = [4, 2, 5, 1, 3] # входной список
    a_etalon = [1, 2, 3, 4, 5] # сортированный список
    sort_algorithm(a)  # что делает  ???
    print("ok" if a == a_etalon else "fail") # сравнение  для вывода на печать
 
 
if __name__ == "__main__":  #  связано с тем, какая  ф-ция будет исполняться в качестве основной
    test_sort(insert_sort)
Реализовано 2 ф-ции: 1) алгоритм сортировки вставками 2) тестирование
Вопросы про функцию тестирования. На видео ф-ция test_sort успешно работала.
Когда я запустил, не сработало. Сортировка работает, тестирование не проходит.
Например, команда sort_algorithm(a) в функции мне вообще непонятна. Гугл не помог. Как исправить ошибки?

Python
1
2
3
4
5
6
7
Тестируем алгоритм:  сортировка списка вставками
test_case #1: Traceback (most recent call last):
  File "C:\Users.................py", line 22, in <module>
    test_sort(insert_sort)
  File "C:\Users..........py", line 17, in test_sort
    sort_algorithm(a)  # что делает  ???
TypeError: insert_sort() takes 0 positional arguments but 1 was given
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
10.11.2021, 16:06
Ответы с готовыми решениями:

Тестирование правильности SQL запроса в коде C#
Требуется проверить корректность SQL-запроса (правильные имена столбцов, правильный синтаксис, недостающие параметры и т.д.). Пока придумал...

Реализация алгоритма сортировки вставками
Мне нужно сделать лабу тема вверху... перед этим прочитал тему https://www.cyberforum.ru/cpp-beginners/thread27084.html все равно не...

Создать систему тестов для доказательства правильности алгоритма
Помогите пожалуйста сделать систему тестов для доказательства правильности алгоритма и проверить работу алгоритма заполнив таблицы. ...

3
62 / 39 / 27
Регистрация: 13.05.2021
Сообщений: 111
10.11.2021, 16:28
sort_algorithm(a) вызывает insert_sort(a)
0
1 / 1 / 0
Регистрация: 02.11.2021
Сообщений: 31
10.11.2021, 16:54  [ТС]
sort_algorithm(a) вызывает insert_sort(a)
А что так можно было? Не знал
Пока не очень уловил конечно т.к. привык, что для вызова функции нужно ссылаться ее название
0
Эксперт Python
5438 / 3859 / 1215
Регистрация: 28.10.2013
Сообщений: 9,552
Записей в блоге: 1
10.11.2021, 17:23
Цитата Сообщение от Aditu Посмотреть сообщение
insert_sort() takes 0 positional arguments but 1 was given
Python
1
2
def insert_sort(a):
    ....
Добавлено через 33 секунды
Цитата Сообщение от Aditu Посмотреть сообщение
что для вызова функции нужно ссылаться ее название
Это и есть ее название. Просто еще одно.
Или, говоря, точнее - это присвоение функции переменной. После чего переменная становится callable объектом.

Python
1
2
3
4
>>> print2 = print
>>> print2(1,2,3)
1 2 3
>>>
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
10.11.2021, 17:23
Помогаю со студенческими работами здесь

Тестирование алгоритма Луна
Я посмотрел алгоритм Луна и мне надо протестировать его. Функции подсчета я не имею. Какие потенциальные ошибки могут появиться?

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

Упорядочить массив записей по полю фамилия с помощью алгоритма сортировки вставками
1.Дан массив, состоящий из записей. Каждая запись содержит два поля: 1 - табельный номер (целое число в диапазоне от 0 до 9999) и 2 -...

Тестирование алгоритма на проверку вершин квадрата
Здравствуйте! У меня есть алгоритм для выяснения, являются ли точки с координатами вершинами квадрата(задаются 4 точки). Тестируя алгоритм...

Подсчитать количество проходов и количество обменов алгоритма вставками
Добрые,люди мне нужно модифицировать задачу.Нужно ввести в неё счетчики,которые считают кол-во проходов и кол-во обменов алгоритма...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: 1. Реализовать контроль заполнения реквизита. . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru