Как преобразовать текст в арифметическое выражение - PullRequest
0 голосов
/ 22 мая 2011

Я хочу построить базовый калькулятор в c #

Предположим, у меня есть текст

Добавьте два плюс три. его арифметика выражение будет (2 + 3)

Добавьте пять тысяч двести к четырем сто тридцать два, разделенные на тридцать четыре. ((5200 + 430) / 34).

Добавьте три миллиона к семи миллионам затем добавь пять два. (((3000000 + 7000000) +5) + 2)

и т. Д.

Какой будет алгоритм для этого?

1 Ответ

3 голосов
/ 22 мая 2011

Может быть, вы должны сделать анализ вашего текста. Идея состоит в том, чтобы узнать токены (интересующий вас текст) из вашей строки. Предположим, что текст «Добавить два плюс три», вы найдете отдельные токены, допустим, что вы найдете токены Add, two, plus, three. Замените токены вашими заранее заданными номерами, например токен two = 2 и так далее. Замените арифметический текст арифметическими операторами, например Add = + и т. Д. И, наконец, выполните вычисленное выражение, чтобы получить результат.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...