Занятие № 12. Алгоритмы поиска и сортировки
Создадим приложение для ведения школьного журнала. В программе должны быть следующие функции:
- возможность ввести количество учеников и их фамилии;
- функция поиска номера ученика по его фамилии;
- сортировка списка учеников по алфавиту.
Начало проекта
Открой файл Journal2-NoCode.sb2. В нём содержаться необходимые спрайты.
Создай необходимые переменные:
Сними галочки рядом с переменными, чтобы убрать их мониторы со сцены.
Теперь создай список в котором будут храниться фамилии учеников:
Монитор для списка учеников необходимо оставить. Теперь сцена должна выглядеть следующим образом:
Заполнение списка учеников
Выбери спрайт Заполнить журнал и добавь ему следующий скрипт:
Нажми на кнопку, введи количество учеников и затем введи фамилии учеников. Они должны появиться в мониторе списка.
Поиск ученика в списке
Реализуем возможность искать номер ученика в журнале. Выбери спрайт Поиск и добавь ему следующий скрипт:
В данном скрипте используется алгоритм линейного поиска. После того как ты заполнишь список учеников, нажми на кнопку Поиск и введи фамилию ученика. Скрипт покажет номер этого ученика в списке, если он там есть.
Сортировка списка учеников
Выбери спрайт Сортировка. Добавь блок Обмен который будет менять два элемента списка местами:
Нажмите OK. Появится блок определения:
Добавьте следующий скрипт в определение блока Обмен:
Теперь добавь основной скрипт:
Протестируй работу алгоритма сортировки.