Математическая Логика и Теория Алгоритмов стр. 61 из 64
© 2003 Галуев Геннадий Анатольевич
- все уточнения интуитивного понятия алгоритма эквивалентны;
- все алгоритмы в точном определении являются одновременно и алгоритмами в
интуитивном смысле.
Алгоритмы, ставящие в соответствие одному входному своду одно выходное, называ-
ются детерминированными. Алгоритмы обладают следующими свойствами:
- Массовость, то есть способность быть применимым для решения множества
задач.
- Результативность. Это
свойство обеспечивает получение результата конечное
число шагов.
- Определенность. Это свойство обеспечивает при повторном поступлении на
вход алгоритма одного и того же слова получение одного и того же выходного
слова.
Кроме детерминированных алгоритмов существуют алгоритмы самоизменяющиеся,
которые при обработке различных слов могут изменяться, и случайные, в которых
правила могут выбираться
случайным образом.
Алгоритмические языки. Определение и классификация.
Алгоритмические языки предназначены для описания вычислительных процес-
сов, являющихся алгоритмами.
Алгоритмическим языком называется совокупность трех множеств:
1. Множество символов(алфавит языка).
2. Множество правил, позволяющих конструировать правильные сообщения в
символах алфавита(синтаксис языка).
3.Множество правил, позволяющих однозначно толковать смысл правильных
записей в символах алфавита(семантика языка).
Иногда в синтаксисе выделяют подмножество
– так называемую лексику языка,
то есть совокупность слов, допустимых в языке вместе с описанием способа их пред-
ставления. Лексика это набор правильных слов языка.
Наиболее общая классификация делит алгоритмические языки по кругу решае-
мых задач.
Например, языки для описания статистических задач, задач вычислительного харак-
тера и так далее.
Другая классификация делит алгоритмические языки на классы по степени их
зависимости от используемой ЭВМ. В этом случае различают машинно-зависимые и
машинно-независимые языки. Первые делятся на машинно-ориентированные
и ма-
шинные. Вторые – на процедурно-ориентированные и проблемно-ориентированные
языки
. Процедурно-ориентированные языки предназначены для описания алгоритмов
решения задач. При переводе программ с этих языков в машинную программу каждое
слово заменяется эквивалентным ему машинным словом. Проблемно-
ориентированные языки почти не зависят от конкретной машины. Перевод с них в
конкретный машинный язык осуществляется по принципу ''несколько слов в несколь-
ко слов''.
Перевод типа ''слово – слова'' в этих языках невозможен.
Понятие программы.
При определении понятия алгоритма мы использовали такие понятия как ко-
манда, программа и ЭВМ. Уточним в интересующем нас аспекте эти понятия.
В самом общем виде ЭВМ представляет собой автомат, состоящий из памяти и
исполнительного устройства. Исполнительного устройство может выполнять ограни-