# Что такое и зачем нужен псевдокод?

**URL:** <https://forum.itvdn.com/t/chto-takoe-i-zachem-nuzhen-psevdokod/2409>\
**Category:** Общие вопросы\
**Created:** [18.09.2018 13:39:42 UTC](https://forum.itvdn.com/t/chto-takoe-i-zachem-nuzhen-psevdokod/2409 "2018-09-18T13:39:42Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![mihail.fezin](https://forum.itvdn.com/letter_avatar_proxy/v4/letter/m/2acd7d/32.png) [@mihail.fezin](https://forum.itvdn.com/u/mihail.fezin)\
**Post date:** [18.09.2018 13:39:42 UTC](https://forum.itvdn.com/t/chto-takoe-i-zachem-nuzhen-psevdokod/2409/1 "2018-09-18T13:39:42Z")

</div>

Я часто в университете слышу что-то вроде "напишите на псевдокоде", "программа на псевдокоде" или "универсальный псевдокод", но что такое этот псевдокод? Это что-то вроде языка программирования? Зачем он нужен, если можно программы писать сразу на нормальных языках программирования?

---

<div class="post-metadata">

**Author:** ![Nikit\_OS69](https://forum.itvdn.com/letter_avatar_proxy/v4/letter/n/eb9ed0/32.png) [@Nikit\_OS69](https://forum.itvdn.com/u/Nikit_OS69)\
**Post date:** [18.09.2018 13:58:29 UTC](https://forum.itvdn.com/t/chto-takoe-i-zachem-nuzhen-psevdokod/2409/2 "2018-09-18T13:58:29Z")

</div>

Псевдокод, как и блок-схемы, нужен для глубокого и основного понимания логики выполнения алгоритма. Псевдокод описывает действие алгоритма так, как его можно реализовать на абсолютно любом языке программирования, и этим он универсален. Это как английский язык в мире: его используют не все, но с его помощью найти общий язык можно практически во всём мире (за исключением определённых районов). Как правило он используется в процессе обучения азам программирования, или для того что бы просто передать суть какого-либо алгоритма (например, алгоритма сортировки). Согласитесь, получить подробный мануал по том как работает алгоритм намного проще и быстрее чем пытаться разобраться в неизвестном для нас языке программирования с учётом всех погрешностей и говнокода программиста, написавшего этот алгоритм.

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

---

<div class="post-metadata">

**Author:** ![yuki19ya](https://forum.itvdn.com/letter_avatar_proxy/v4/letter/y/ba9def/32.png) [@yuki19ya](https://forum.itvdn.com/u/yuki19ya)\
**Post date:** [18.09.2018 21:49:43 UTC](https://forum.itvdn.com/t/chto-takoe-i-zachem-nuzhen-psevdokod/2409/3 "2018-09-18T21:49:43Z")

</div>

**Здравствуйте.**

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

Перед тем как писать код ну вроде вот этого:

(Как пример приведу кусочек кода на Python.) # Программа "Привет".

# Демонстрирует использование переменных.

name = input('Введите Ваше имя: ')

name = 'Ваше имя: ' name

print(name)

input('\n\nНажмите Enter, чтобы выйти.')

Это код программный.\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_

А, на псевдокоде это выглядит вот так:

# Пишем название программы.

# Описываем то, что данная программа из себя представляет.

Создаём переменную = ('и ей присваивается значение, которое введёт пользователь': )

Затем = 'Выводим ответ: ' с переменной, которой присвоено значение пользователем

Функция print выводит на экран слова, (Ваше имя: и введённое пользователем имя.)

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

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

Это вроде планирования, как когда Вы идёте в магазин и пишете список покупок, это тоже план (план действий).

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

---

<div class="post-metadata">

**Author:** ![antoha1342](https://forum.itvdn.com/letter_avatar_proxy/v4/letter/a/9fc29f/32.png) [@antoha1342](https://forum.itvdn.com/u/antoha1342)\
**Post date:** [19.09.2018 06:19:33 UTC](https://forum.itvdn.com/t/chto-takoe-i-zachem-nuzhen-psevdokod/2409/4 "2018-09-19T06:19:33Z")

</div>

Согласен с тем что после примера, но вот сам пример...

Вот алгоритм быстрой сортировки на псевдокоде:

```
**algorithm** quicksort(A, lo, hi) **is**** if **lo < hi** then**p := partition(A, lo, hi)
        quicksort(A, lo, p - 1)
        quicksort(A, p 1, hi)
```

не очень-то похоже на то пошаговое перечисление команд словами, что вы написали как пример...

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

"Функция print выводит на экран слова, (Ваше имя: и введённое пользователем имя.)" - а вот это, если я не ошибаюсь, не совсем верно будет, поскольку идёт отсылка к определённому языку. Псевдокод не должен быть никак привязан ни к одному языку. Скорее стоило бы написать так:

"Выводим на экран слова, (Ваше имя: и введённое пользователем имя.)", без указания названий функций.
