СРЕДСТВА РЕСУРСНОЙ ПОДДЕРЖКИ.
Программное обеспечение ЭВМ. АЛГОРИТМЫ И ПРОГРАММЫ
Словесный способ описания алгоритмов
Для словесного описания алгоритмов используются специальные АЛГОРИТМИЧЕСКИЕ ЯЗЫКИ. Всякий алгоритмический язык, как любой язык, содержит следущие три компоненты:
1. АЛФАВИТ - набор всех символов языка (буквы, цифры, знаки препинания, специальные символы и т.п.).
2. СИНТАКСИС - совокупность правил образования слов и конструкций языка.
3. СЕМАНТИКА - совокупность толкования слов и выражений языка.
В соответствии с перечисленными определениями любой общепринятый язык может использоваться в качестве алгоритмического языка. Однако, неоднозначность многих слов, зависимость их смысла от других слов в выражении (зависимость от контекста) требует длинных фраз для выполнения свойства определенности описываемого алгоритма. Например, слово партия имеет следующие значения в зависимости от контекста: часть целого, политическая партия, партия товара, игровая партия, брачная партия и другие. Алгоритмические языки, в которых толкование слов зависит от контекста называются КОНТЕКСТНОЗАВИСИМЫМИ, а языки, в которых толкование слов не зависит от контекста КОНТЕКСТНОНЕЗАВИСИМЫМИ. Для целей составления программ используются последний тип алгоритмических языков.
Рассмотрим фразу написанную на некотором алгоритмическом языке:
НАЧАЛО;ВВОД X;ЕСЛИ X>=0 ТО Y=X ИНАЧЕ Y=-X;ВЫВОД Y;КОНЕЦ;
Очевидно, что алфавит языка содержит заглавные буквы русского и английского языков, знаки отношений: равно, больше или равно. Содержит так же точку с запятой для разделения операторов. Синтаксис языка содержит русские слова, конструкцию ЕСЛИ ... ТО ... ИНАЧЕ. Семантика языка предполагает независимость от контекста. Не трудно видеть, что это алгоритм вычисления модуля X.
Этот язык не применяется, но если осуществить прямой перевод приведенной фразы на английский язык, то получим:
BEGIN;INPUT X;IF X>=0
THEN Y=X ELSE Y=-X;OUTPUT Y;END;
Приведенная фраза за исключением незначительных деталей совпадает с фразой, описывающей алгоритм вычисления модуля X на стандартном (общепринятом) алгоритмическом языке ALGOL 60. Этот язык в свое время европейских странах использовался в качестве стандартного для передачи алгоритмов.
Как указывалось, ЯЗЫКОМ ПРОГРАММИРОВАНИЯ называется АЛГОРИТМИЧЕСКИЙ ЯЗЫК, используемый для программирования задач на ЭВМ. Иными словами, если для какого-либо алгоритмического языка разработан транслятор (компилятор или интерпретатор), то можно утверждать, что существует соответствующий язык программирования.