Введение в информационные системы. Брюхомицкий Ю.А. - 98 стр.

UptoLike

Составители: 

98
найти наименьшее число среди таких чисел. В описании вообще не говорится о
том, как искать наименьшие числа.
Итак, необходимо уточнить формы представления данных. При этом
нельзя просто заявить, что допустимо любое представление чисел. Ведь для
каждого представления существует свой алфавит и свой способ сравнения чи-
сел (например, способ перевода в
десятичную дробь). Конечность алфавита
требует фиксировать его заранее, а конечность описания алгоритма позволяет
включить в него лишь заранее фиксированное число способов сравнения. Фик-
сация представления чисел, например, в виде десятичных дробей также не ре-
шает всех проблем. Сравнение чисел разной разрядности уже не является эле-
ментарным действием. В машинных же алгоритмах
само представление числа
еще требует дальнейшего уточнения: нужно, во-первых, ограничить число раз-
рядов в числе, а во-вторых, выбрать форму представления числа (с
фиксированной или плавающей точкой), поскольку способы обработки этих
двух представлений различны. Наконец, на шаге 1 требуется узнать: само наи-
меньшее число (чтобы записать его в R) и
его место в Р, т. е. его адрес в памяти,
где хранится P (чтобы вычеркнуть его из Р), а следовательно нужно иметь сред-
ства указания этого адреса.
Таким образом, даже такой простой пример показывает, что описание,
внешне претендующее на алгоритм, таковым не является. Возникла необходи-
мость уточнить почти все основные характеристики
алгоритма, которые отме-
чались ранее: алфавит данных и форму их представления, память и размещение
в ней элементов P и R, элементарные шаги. Кроме того, выбор механизма реа-
лизации (человек или ЭВМ) будет влиять и на сам характер уточнения: у чело-
века требования к памяти, представлению данных и к элементарности шагов
гораздо более слабые и «обобщенные», многие детали он уточняет сам.
С точки зрения формализации описания алгоритма, для данного алго-
ритма, как правило, можно выделить 7 характеризующих его (не независимых)
параметров:
1. Совокупность возможных исходных данных;
2. Совокупность возможных результатов;
3. Совокупность возможных промежуточных результатов;
4. Правило начала;
5. Правило непосредственной переработки;
6. Правило окончания;
7.
Правило извлечения результата.
Для формализации алгоритмического процесса целесообразно рассмат-
ривать алгоритмы, оперирующие с произвольными символами и их комбина-
циями. В простейшем случае это могут быть линейная последовательность сим-
волов, образующая слово. Можно рассматривать и нелинейные комбинации,
такие как алгебраические матрицы, фразы того или иного языка с помеченным
порядком синтаксического управления, размеченные
графы и т.п. В наиболее