nlothik (nlothik) wrote,
nlothik
nlothik

Categories:

Обратная польская запись

Вот интересно, почему в школах не учат ОПЗ? Я про неё узнал только в университете. И вообще, почему она не применяется шире? Ведь она крайне удобная. В первую очередь тем, что исключает неверное прочтение и неправильный порядок действий.

Для тех, кто не знает, что это такое -- арифметическое выражение записывается как "число число действие". Так, "два помножить на три" (т.н. инфиксная нотация) записывается как 2 3 *.

Или вот например, более сложное выражение 5 - 4 * 2. Ученику надо долго вдалбливать, что сначала надо сделать умножение, и только потом вычитать, чтобы у него вместо 2 получились правильные -3.

А вот то же самое в обратной польской записи:

5 4 2 * -

Неверное прочтение исключено.

А насколько проще жить без этих дурацких скобок, которые не делают ровным счётом НИЧЕГО полезного, кроме показывания, какое действие надо выполнить первым?

Вот обычный инфикс: 2 * (3 - 8)
ОПЗ: 2 3 8 - *

Никаких скобок, и порядок действий кристально ясен.

Кажется неудобным? Только по первости. Внутренне мы тоже "парсим" обычное выражение на составные части и считаем их поочерёдно в зависимости от приоритета действия, а потом соединяем части выражения. Точно так же считают компьютеры. Даже те языки, которые напрямую не используют стек для арифметики -- в конечном счёте ведь на ассемблере сначала подготавливаются переменные (записью в регистры), и только потом производится действие.

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

Даёшь пана Лукасевича (он её придумал) в массы!!
Tags: компьютерное, математика, программирование
Subscribe

  • Пора валить

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

  • Про советскую школьную реформу

    В комментах к прошлому посту выяснилось, что не все знают, как СССР испортил преподавание математики в школах в 1970-1978 годах. Самые худшие…

  • Про американские школы

    Одна из вещей в США, о которой у меня очень неприглядное впечатление — это американское среднее образование. Если не жить в местах типа…

  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 24 comments

  • Пора валить

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

  • Про советскую школьную реформу

    В комментах к прошлому посту выяснилось, что не все знают, как СССР испортил преподавание математики в школах в 1970-1978 годах. Самые худшие…

  • Про американские школы

    Одна из вещей в США, о которой у меня очень неприглядное впечатление — это американское среднее образование. Если не жить в местах типа…