Алгоритмічна мова
Досить поширеним способом є алгоритми є їх запис, використовуючи алгоритмічний мову, що представляє у загальному випадку систему позначень і правил для однакового і точного запису алгоритмів та їх виконання. Зазначимо, що між поняттями "алгоритмічна мова" та "мови програмування" є різниця; Насамперед, під виконавцем в алгоритмічній мові може бути не тільки комп'ютер, а й пристрій для роботи "в обстановці". Програма, записана алгоритмічною мовою, не обов'язково призначена комп'ютеру. Практична ж реалізація алгоритмічної мови – окреме питання у кожному конкретному випадку.
Як і кожна мова, алгоритмічна мова має власний словник. Основу цього словника становлять слова, вживані для запису команд, які входять у систему команд виконавця тієї чи іншої алгоритму. Такі команди називаються простими командами. В алгоритмічній мові використовують слова, зміст та спосіб вживання яких заданий раз і назавжди. Ці слова називають службовими. Використання службових слів робить запис алгоритмів наочнішою, а форму представлення різних алгоритмів – одноманітною.
Алгоритми, записані алгоритмічною мовою, повинні мати назву. Назву бажано вибирати так, щоб було зрозуміло, розв'язання якого завдання описує даний алгоритм. Для виділення назви алгоритму перед ним записують службове слово АЛГ (АЛГоритм). За назвою алгоритму (зазвичай з нового рядка) записують його команди. Для вказівки початку та кінця алгоритму його команди укладають у пару службових слів НАЧ (ПОЧАТОК) та КОН (Кінець). Команди записують послідовно.
При побудові нових алгоритмів можна використовувати алгоритми, складені раніше. Алгоритми, що повністю використовуються у складі інших алгоритмів, називають допоміжними алгоритмами. Допоміжним може бути будь-який алгоритм з числа раніше складених. Не виключається також, що допоміжним у певній ситуації може виявитися алгоритм, що сам містить посилання на допоміжні алгоритми.
Дуже часто при складанні алгоритмів виникає необхідність використання як допоміжний один і той же алгоритм, який до того ж може бути дуже складним і громіздким. Було б нераціонально, починаючи роботу, щоразу наново складати та запам'ятовувати такий алгоритм для його подальшого використання. Тож у практиці широко використовують, звані, вбудовані (чи стандартні) допоміжні алгоритми, тобто. такі алгоритми, які є у розпорядженні виконавця. Звернення до таких алгоритмів здійснюється так само, як і до "звичайних" допоміжних алгоритмів.
Алгоритм може містити звернення до себе як допоміжного і в цьому випадку його називають рекурсивним. Якщо команда звернення алгоритму до себе перебуває у самому алгоритмі, то таку рекурсію називають прямою. Можливі випадки, коли рекурсивний виклик даного алгоритму походить з допоміжного алгоритму, якого у цьому алгоритмі є звернення. Така рекурсія називається непрямою.
Алгоритми, при виконанні яких порядок слідування команд визначається залежно від результатів перевірки деяких умов, називають такими, що розгалужуються. Для їх опису алгоритмічною мовою використовують спеціальну складову команду – команда розгалуження. Вона відповідає блок-схемі "альтернатива" і може мати повну або скорочену форму.
Алгоритми, у виконанні яких окремі команди чи серії команд виконуються неодноразово, називають циклічними. Для організації циклічних алгоритмів алгоритмічною мовою використовують спеціальну складову команду циклу.
