Разработка алгоритма решения задачи

Алгоритм - это точное предписание, определяющее вычислительный процесс, ведущий от варьируемых начальных данных к искомому результату (ГОСТ 19.781-74).

Алгоритм содержит указание о том, какие операции необходимо выполнить над исходными данными и в какой последовательности для решения задачи.

Поэтому при разработке алгоритма необходимо четко представлять поставленную задачу, чтобы предусмотреть все возможные варианты действий.

К алгоритмам предъявляются следующие требования.

Определенность (детерминированность) означает однозначность толкования отображаемого алгоритмом вычислительного процесса.

Результативность алгоритма заключается в возможности получения результата решения задачи для допустимых исходных данных за конечное число шагов.

Массовость означает, что решение однотипных задач с различными исходными данными может быть осуществлено по одному алгоритму.

Дискретность означает, что определяемый алгоритмом вычислительный процесс может быть расчленен на отдельные этапы, элементарные операции.

Понятность (доступность) – алгоритм должен учитывать специфику исполнителя и, при необходимости, ему должны предоставляться дополнительные сведения; На практике используются следующие формы представления алгоритмов:

* Словесная запись (не формализованная запись алгоритма на естественном языке, например, рецепт приготовления манной каши);

* Блок-схема (наиболее наглядная графическая форма представления алгоритмов, используемая профессионалами особенно в тех случаях, когда алгоритм обладает изощренной логикой исполнения);

* Псевдокоды (язык программирования для бедных, когда нет возможности преподавать основы алгоритмизации с использованием ЭВМ – полуформализованные описания алгоритмов, включающий в себя как элементы "птичьего" языка программирования);

* Компьютерная программа (жестко формализованная запись алгоритма, ориентированная на исполнителя – ЭВМ). Для разработки компьютерных программ используются инструментальные средства, называемые языками программирования.

Рассмотрим запись алгоритма Евклида нахождения наибольшего общего делителя (НОД) для двух натуральных чисел во всех четырех перечисленных выше формах.

                   
   
 
 
   
 
   
проверка условия Это линейный тип алгоритма (следование)
 
 
 
   
к содержанию задание исходных данных, вывод результата

·

 


Правила разработки, оформления и обращения программ и программной документации определяются ЕДИНОЙ системой программной документации (ЕСПД) - комплексов государственных стандартов (ГОСТ 19.001-77).

Требования стандартов ЕСПД предъявляются к оформлению программ и программной документации в любой области, где применяются вычислительные машины.