Разработать на языке C# программу-парсер математических выражений с их переводом в обратную польскую запись и последующим вычислением.
В программе должна быть возможность добавления именованных констант, которые можно употреблять в выражениях; при вычислении вместо них должны подставляться числовые значения.
Также программа должна уметь вычислять значение функции одной переменной на отрезке и строить график данной функции.
Парсер должен «понимать» скобки (в том числе и вложенные), а также следующие математические операции: +, -, :, *, ^, sin, cos, tg, ctg, arcsin, arccos, arctg, arcctg, ln, lg, exp, sqrt.