Псевдокод (язык описания алгоритмов): различия между версиями

Перейти к навигации Перейти к поиску
→‎Преамбула: оформление, стилевые правки, убрал повторы и рассуждения
м (грамматические ошибки (терпеть не могу неграмотность))
(→‎Преамбула: оформление, стилевые правки, убрал повторы и рассуждения)
{{Значения|Псевдокод}}
'''Псевдоко́д''' — компактный, (зачастую неформальный) язык описания [[алгоритм]]ов, использующий ключевые слова [[Императивное программирование|императивных]] [[язык программирования|языков программирования]], но опускающий несущественные подробности и специфический синтаксис. Псевдокод обычно опускает детали, несущественные для понимания алгоритма человеком.подробности Такимии несущественнымиспецифический деталями могут быть описания переменных, системно-зависимый код и подпрограммысинтаксис. ГлавнаяПредназначен цельдля использования псевдокода — обеспечить пониманиепредставления алгоритма человекомчеловеку, сделатьа описаниене болеедля воспринимаемым,компьютерной чем [[исходный код]] на языке программирования. Псевдокод широко используется в учебникахтрансляции и научно-техническихпоследующего публикациях,исполнения а также на начальных стадиях разработки [[Компьютерная программа|компьютерных программ]]программы.
 
== Назначение и особенности ==
[[Блок-схема|Блок-схемы]] и [[ДРАКОН|дракон-схемы]] можно рассматривать как графическую альтернативу псевдокоду. В отличие от стандартизации синтаксиса языков программирования, на синтаксис псевдокода обычно не устанавливается стандартов, так как последний непосредственно не компилируется в исполняемую программу. Поэтому можно сказать, что обычно автор каждой публикации применяет свой оригинальный псевдокод, однако чтобы быть максимально понятным читателям, авторы публикаций содержащих псевдокод, как правило, заимствуют нужные им конструкции из какого-либо языка программирования. Зачастую источником псевдокода служат несколько языков, и таким образом псевдокод часто не содержит специфических признаков конкретного языка программирования. Кроме того, математические выражения часто включаются в псевдокод в том виде, как их принято записывать в математике, а не в языках программирования, а некоторые фрагменты псевдокода могут быть фразами естественного языка (русского, английского и т. д.). Однако при этом конструкции некоторых языков программирования чаще используются для псевдокода. Так, например, очень часто используется синтаксис, похожий на синтаксис языка [[Паскаль (язык программирования)|Паскаль]]. Это объясняется тем, что Паскаль создавался как язык, ориентированный на задачи обучения программированию, и поэтому синтаксис этого языка особенно приспособлен для восприятия человеком. Часто используются и другие языки: [[Си (язык программирования)|Си]], [[Алгол]], [[Фортран]] и другие. Их использование можно объяснить как личными симпатиями автора, так и распространенностью на момент написания публикации. В случае русскоязычных публикаций в качестве псевдокода часто используется перевод ключевых слов языков программирования с английского на русский. Такой подход практикуется, в частности, в учебниках по информатике.
Псевдокод обычно опускает детали, несущественные для понимания алгоритма человеком. Такими несущественными деталями могут быть описания переменных, системно-зависимый код и подпрограммы. Главная цель использования псевдокода — обеспечить понимание алгоритма человеком, сделать описание более воспринимаемым, чем [[исходный код]] на языке программирования. Псевдокод широко используется в учебниках и научно-технических публикациях, а также на начальных стадиях разработки [[Компьютерная программа|компьютерных программ]]. [[Блок-схема|Блок-схемы]] и [[ДРАКОН|дракон-схемы]] можно рассматривать как графическую альтернативу псевдокоду.
 
В отличие от языков программирования, на синтаксис псевдокода не устанавливается стандартов, и автор каждой публикации может применять свой оригинальный псевдокод. На практике авторы обычно заимствуют нужные им конструкции из одного или нескольких широко известных и распространённых языков программирования. Сейчас обычно заимствуют элементы синтаксиса таких языков как [[Паскаль (язык программирования)|Паскаль]], [[Си (язык программирования)|Си]], [[Java]], в более старых публикациях часто использовался [[Алгол]].
На практике же программист может выбирать язык, который максимально подробно описывает то, что ему нужно ''точно'' получить от машины, чтобы избежать разногласий с заказчиком.
 
Из псевдокода исключаются технические элементы, такие как описание переменных, операции выделения и освобождения памяти, если только они не являются существенными элементами рассматриваемого алгоритма. Математические выражения часто включаются в псевдокод в том виде, как их принято записывать в математике, а не в языках программирования, а некоторые фрагменты псевдокода могут быть фразами естественного языка (русского, английского и т. д.).
 
== Другие варианты псевдокода ==
В ряде случаев псевдокодом называют систему команд абстрактной машины, например, [[P-код]], псевдокод вымышленной машины [[MIX]] и т. д. В отличие от псевдокода неформального характера, такой псевдокод уже строго формализован, труднее для понимания человеком, но может быть [[Транслятор|транслирован]] в работающую программу и запущен в [[эмуляция|программе-эмуляторе]] данной гипотетической машины.
 

Навигация