У середовищі Scrаtch можна створювати великі алгоритми для розв’язування складних задач.Розробка проекту складається з таких етапів:
- Проаналізувати умову задачі, визначити об’єкти проєкту.
- Скласти загальний план розв'язування задачі: розбити задачу на декілька простіших підзадач, визначити основні кроки розв’язування (що зробити?).
- Розробити шляхи та методи реалізації намічених кроків (як зробити?).
- Описати алгоритм мовою середовища виконання алгоритмів.
Отже, якщо задача складна, то її розбивають на декілька простіших підзадач. Алгоритм розв’язування кожної підзадачі можна оформити як допоміжний алгоритм — окремий іменований блок програмного коду. Маючи допоміжні алгоритми, записують головний алгоритм, який складатиметься з команд викликів допоміжних. Отже, великі алгоритми утворюють з готових модулів (блоків) подібно до того, як будинки будують з готових блоків, а машини збирають з окремих деталей.
Головний алгоритм — це такий алгоритм, виконання якого веде до досягнення основної мети.
Допоміжний алгоритм — це окремий іменований блок програмного коду, призначений для досягнення проміжної мети.
Приклад:
Скласти алгоритм дій на день.
Алгоритм День
1. Виконати алгоритм Ранок.
2. Виконати алгоритм Школа
3. Виконати алгоритм Вечір.
Головний алгоритм День складається з трьох вказівок виклику допоміжного алгоритму (Ранок, Школа і Вечір). Розробимо допоміжні алгоритми:
Алгоритм День
1. Виконати алгоритм Ранок.
2. Виконати алгоритм Школа
3. Виконати алгоритм Вечір.
Головний алгоритм День складається з трьох вказівок виклику допоміжного алгоритму (Ранок, Школа і Вечір). Розробимо допоміжні алгоритми:
Алгоритм Ранок
1. Встати о 7-й годині.
2. Виконати алгоритм Гігієнічні процедури.
3. Виконати ранкову гімнастику.
4. Поснідати.
5. Одягнутися.
6. Вийти з дому о 8-й годині.
Алгоритм Школа
1. Доки не закінчилися уроки іти на наступний урок згідно з розкладом.
2. Іти додому.
Алгоритм Вечір
1. Повернутися зі школи додому.
2. Перевдягнутися.
3. Пообідати.
4. Зробити уроки.
5. Повечеряти.
6. Почитати книжку.
7. Роздягнутися.
8. Виконати алгоритм Гігієнічні процедури.
9. Лягти спати.
1. Встати о 7-й годині.
2. Виконати алгоритм Гігієнічні процедури.
3. Виконати ранкову гімнастику.
4. Поснідати.
5. Одягнутися.
6. Вийти з дому о 8-й годині.
Алгоритм Школа
1. Доки не закінчилися уроки іти на наступний урок згідно з розкладом.
2. Іти додому.
Алгоритм Вечір
1. Повернутися зі школи додому.
2. Перевдягнутися.
3. Пообідати.
4. Зробити уроки.
5. Повечеряти.
6. Почитати книжку.
7. Роздягнутися.
8. Виконати алгоритм Гігієнічні процедури.
9. Лягти спати.
Алгоритми Ранок і Вечір як допоміжний використовують алгоритм Гігієнічні процедури.
Алгоритм Гігієнічні процедури
1. Почистити зуби.
2. Умитися.
1. Почистити зуби.
2. Умитися.
Частини, з яких складається алгоритм, називаються модулями.
На рис.1 подано модульну структуру алгоритму День. Вона відображає, які допоміжні алгоритми використовує основний алгоритм, але не описує (не вказує чітко) послідовності їх виконання.
Описаний метод називають проектуванням алгоритму «зверху-вниз» з покроковою деталізацією (уточненням) допоміжних алгоритмів.
На рис.1 подано модульну структуру алгоритму День. Вона відображає, які допоміжні алгоритми використовує основний алгоритм, але не описує (не вказує чітко) послідовності їх виконання.
Описаний метод називають проектуванням алгоритму «зверху-вниз» з покроковою деталізацією (уточненням) допоміжних алгоритмів.
Метод покрокової деталізації конструювання алгоритмів полягає в тому, що спочатку проектують модульну структуру алгоритму: описують призначення головного та допоміжних алгоритмів, дають їм назви. Потім деталізують (створюють, уточнюють) необхідні допоміжні алгоритми для розв'язування підзадач.
Зверни увагу!
Допоміжний алгоритм (як і будь-який інший алгоритм) повинен мати лише один вхід і один вихід. Усі вказівки допоміжного алгоритму мають входити до системи команд обраного виконавця.