Что такое псевдокод и алгоритм?

Anonim

В очень простых терминах, ПСЕВДОКОД представляет собой повествование, описывающее логику алгоритма.

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

Унифицированный язык моделирования (UML) и другие методологии бизнес-моделирования также можно назвать примерами псевдокода. Хотя эти средства не являются чисто текстовыми, эти инструменты используются для визуального представления исполняемой задачи или процесса.

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

Если псевдокод не существует для алгоритма, то лишнее время тратится на размышление о решении или извлечение какой-то неопределенной идеи на стадии кодирования, обычно с надвигающимся сроком.

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

Посмотрите на этот пример псевдокода из Академии Хан[я]:

Это текстовый псевдокод, написанный в инструменте разработки программного обеспечения.

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

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

// Как мы получаем наши идеи в код?

// Нарисуем лицо, овал в центре Эллипс (ширина /2, рост/2, 200, 300);

// Нарисуйте два глаза, два овала, около 2/3 на лице и 1/5 размера лица Эллипс (ширина /2 – 40, рост/2 – 50, 40, 40); Эллипс (ширина /2 + 40, рост/2 – 50, 40, 40);

В другом примере ниже показано более техническое и структурированное отношение к написанию псевдокода:

Если степень ученика больше или равна 60

Печать «Хорошо сделано!»

еще

Печать «Извините, вы не смогли»

Когда речь идет о структурированном псевдокоде, существуют стандартные термины, которые представляют логику алгоритма, такую ​​как ПОСЛЕДОВАТЕЛЬНОСТЬ, В ТО ВРЕМЯ КАК, IF-THEN-ELSE и дополнительные конструкции, которые также полезны, включают ПОВТОР-ПОКА, ДЕЛО, а также ЗА.

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

  • ПОСЛЕДОВАТЕЛЬНОСТЬ указывает последовательно выполнение задач сверху вниз.
  • В ТО ВРЕМЯ КАК является повторяющимся циклом, выполняемым до тех пор, пока не будет выполнено условие, определенное в начале.
  • IF-THEN-ELSE это решение, принятое между двумя условиями:
пример

IF HoursWorked> NormalWeek THEN

Отображать сообщение о расписании сверхурочного времени

ELSE

Отображать сообщение обычного расписания

  • ПОВТОР-ПОКА является повторяющимся циклом, выполняемым до тех пор, пока не будет выполнено условие, определенное в конце.
пример

ПОВТОРЕНИЕ

последовательность

ДОПОЛНИТЕЛЬНОЕ условие

  • ДЕЛО предусматривает множество решений, основанных на значении выражения.
  • ЗА представляет собой повторяющуюся петлю счета

Обратите внимание, что для каждой задачи или процесса используйте КОНЕЦ/ENDIF (где используется IF) в конце, чтобы указать, что это точка окончания или результат вывода.

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

С глаголами слова «делать» используют термины, такие как «Процесс», «Компьютер», «Сброс», «Приращение», «Добавить», «Умножение», «Печать», «Показать» и т. Д. И отмечают, что отступ способствует нежелательному псевдокоду.

Теперь давайте посмотрим на алгоритмы и то, как они отличаются от псевдокода.

Во-первых, что такое алгоритм?

«Неофициально, алгоритмом является любая четко определенная вычислительная процедура, которая принимает некоторое значение или набор значений в качестве ввода и производит некоторое значение или набор значений, так как выход. Таким образом, алгоритм представляет собой последовательность вычислительных шагов, которые преобразуют ввод в выход.” [II]

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

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

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

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

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

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

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

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

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

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

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