Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Общие вопросы по .NET и C# > Как обработать мат.функцию


Автор: ДобренькийПапаша 19.11.2009, 18:46
Вот человек мне в текстбокс вводит предположим 4a+3b,
как мне впоследствии с этим производить математические вычисления?
Подставлять значения в такое выражение и вычислять результат например?

Автор: PashaPash 19.11.2009, 19:07
ДобренькийПапаша, можно начать с изучения обратной польской записи smile

Автор: diadiavova 19.11.2009, 19:35
В книге Шилдта "Полный справочник по C#" есть пример. А вообще, чтобы самому такое писать надо теорию изучить на приличном уровне, а так лучше воспользоваться готовым решением, например вводить текст на каком-нибудь языке программирования. На том же шарпе, с использованием динамической компиляции. Вот тут тема обсуждалась, правда там на бейсике всё.
http://forum.vingrad.ru/forum/topic-253803/kw-%D1%81%D1%82%D1%80%D0%BE%D0%BA%D0%B0-%D0%B2%D1%8B%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5/view-all.html

Автор: Zakonnic 20.11.2009, 12:46
Цитата(PashaPash @  19.11.2009,  19:07 Найти цитируемый пост)
ДобренькийПапаша, можно начать с изучения обратной польской записи

Не обязательно smile Можно ввести в гугл правильный запрос: http://www.google.com/search?q=Math+Expression+Evaluator+site%3Acodeproject.com

Я кстати, свой набыдлокодил без всяких польских нотаций, просто линейным парсингом, динамически заполняя списки переменных. Получилось что-то вроде конечного автомата очень узкой специализации. Работал с ураганной скоростью (на С++, правда).

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)