Просмотр кода страницы Ан Выр страница

%%(wacko wrapper=text wrapper_align=center) ==== Анализ арифметических выражений. Обратная польская запись.== %%

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

 %%(wacko wrapper=text wrapper_align=center) ===== Задачи == %%

__**1.**__ 
Написать функцию, возвращающую значение целого арифметического выражения по представляяющей его строке. Допустимые операции: сложение ('+),  вычитание('-), , умножение ('*'), деление ('/'), остаток ('%')
  i. строка состоит из 3-х символов и имеет формат ##//<цифра>  <оператор>  <цифра>//##.
  i. строка имеет формат ##//<цифра>// **{** //<оператор> <цифра>// **}**##.  (часть, заключенная в фигурные скобки может неограниченно повторяться или быть пустой; все операции имеют одинаковый приоритет и выполняяюются слева направо.)
  i. строка имеет формат  ##//<натуральное число> <оператор> <натуральное число>//##.
  i. строка имеет формат ##//<натуральное число>// **{** //<оператор> <натуральное число>// **}**##.  (часть, заключенная в фигурные скобки может неограниченно повторяться или быть пустой; все операции имеют одинаковый приоритет и выполняяюются слева направо.)
  i. Тот же формат, но действия выполняются в соответствии с приоритетом.
  i. Добавляется операция возведения в степень ('^').
  i. Добавляется возможность расстановки скобок в выражении.
  i. Выражение дополняется однобуквенными переменными.
  i. Входящие в выражение числа могут быть десятичными дробяями.
  i. Добавляется возможность вычисления некоторых функций.