Введение псевдокода

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

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

❓ Что такое псевдокод?

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

👍 Преимущество

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

⚠️ Недостаток

  • Не визуализирует логику, как это делает блок-схема.
  • Нотация сильно варьируется в зависимости от автора.

🔑 Основные структуры в псевдокоде

  • SEQUENCE представляет линейные задачи, последовательно выполняемые одна за другой.
  • ВЫБОР выполняет действия на основе заданного условия
  • ИТЕРАЦИЯ позволяет многократно выполнять утверждение

📝 Советы по созданию понятного псевдокода

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

🐾 1. Пишите только одну задачу на строку

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

EX_BEFORE

Read name, product_price, amount, tax_rate
sales = product_price * amount, tax = sales * tax_rate
Write name, sales, sales + tax
Войти в полноэкранный режим Выйти из полноэкранного режима
EX_AFTER

READ name, product price, amount, tax_rate
sales = product_price * amount
tax = sales * tax_rate
sales_with_tax = sales + tax
WRITE name, sales, sales_with_tax
Войти в полноэкранный режим Выход из полноэкранного режима

🐾 2. Запишите заглавными буквами начальное ключевое слово

В приведенном выше примере слова READ и WRITE написаны прописными буквами. Ниже приведены примеры ключевых слов, которые следует писать с прописной буквы.

READ, WRITE, IF, ELSE, ENDIF, WHILE, ENDWHILE, REPEAT, UNTIL

🐾 3. Отступы, чтобы показать иерархию

Мы будем использовать определенный шаблон отступов в каждой из структур проектирования:

  • ПОСЛЕДОВАТЕЛЬНОСТЬ : располагайте утверждения в последовательности, все они начинаются в одном столбце.
  • ВЫБОР : отступ для утверждений внутри структуры выбора, но не для ключевых слов, которые формируют выбор.
  • ИТЕРАЦИЯ : отступ от утверждений внутри цикла, но не от ключевых слов, формирующих цикл.
EX

READ name, result
IF result >= 80
   message = "You passed"
ELSE
   message = "You failed"
ENDIF
WRITE message
Вход в полноэкранный режим Выйти из полноэкранного режима

🐾 4. Завершение многострочных структур

Посмотрите, как в приведенном выше примере оператор IF заканчивается ENDIF. Независимо от типа ключевого слова, все, с чего начинается структура, должно заканчиваться END-KEYWORD. Например, ключевое слово WHILE заканчивается ENDWHILE и так далее.

🐾 5. Делайте свои утверждения независимыми от языка

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

💡 Примеры псевдокода

🐾 Оператор If

READ name, result
IF result = 100
   message = "Perfect!"
ELSEIF result >= 80
   message = "You passed"
ELSE
   message = "You failed"
ENDIF
WRITE message
Вход в полноэкранный режим Выйти из полноэкранного режима

🐾 Вложенные if

READ name,sex,is_married
IF sex = male
   WRITE "Hello Mr. " + name
ELSE
   IF is_married = true
      WRITE "Hello Mrs. " + name
   ELSE
      WRITE "Hello Ms. " + name
   ENDIF
ENDIF
Ввести полноэкранный режим Выход из полноэкранного режима

🐾 WHILE

count = 0
WHILE count < 10
  ADD 1 to count
  WRITE count
ENDWHILE
WRITE “The end”
Ввести полноэкранный режим Выход из полноэкранного режима

Вы можете разделить последовательность на модули

count = 0
WHILE count < 10
   DO PROCESS
ENDWHILE
WRITE “The end”

PROCESS
ADD 1 to count
WRITE count
Войти в полноэкранный режим Выйти из полноэкранного режима

🐾 ПОВТОРИТЬ/ВЫПОЛНИТЬ

count = 0
REPEAT
  ADD 1 to count
  WRITE count
UNTIL count >= 10
WRITE “The end”
Ввести полноэкранный режим Выход из полноэкранного режима

🐾 ЗА

FOR x = 1 to 10
  IF x % 2 = 0
    WRITE x + " is even"
  ELSE
    WRITE x + " is odd"
ENDFOR
Войти в полноэкранный режим Выход из полноэкранного режима

🐾 CASE

CASE Day OF
    1 : WRITE "Monday"
    2 : WRITE "Tuesday"
    3 : WRITE "Wednesday"
    4 : WRITE "Thursday"
    5 : WRITE "Friday"
    6 : WRITE "Saturday"
    7 : WRITE "Sunday"
    OTHERWISE OUTPUT "Day invalid"
ENDCASE
Ввести полноэкранный режим Выйти из полноэкранного режима

🐔 В заключение

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

🎓 Ссылка

PseudocodeBasics
Псевдокод: Что это такое и как его писать
Типы логических структур

Оцените статью
devanswers.ru
Добавить комментарий