Калькулятор машины Тьюринга - PullRequest
0 голосов
/ 30 апреля 2018

Может ли кто-нибудь дать мне пример кода для калькулятора машины Тьюринга

, который может принимать эти входные данные

30+25x3-2/5=

и выходной сигнал 104,6

этот калькулятор не может принять эти данные

3+52-2
43+1=12
0+12+1=
2+0+x2=
1x02=
+2+3=
x19x1=
12x2x=

1 Ответ

0 голосов
/ 30 апреля 2018

Это звучит как домашнее задание, поэтому я не буду давать вам код, но в целом вам нужно будет проанализировать входные данные в древовидную структуру на основе порядка операций, а затем рекурсивно разрешить их. Есть несколько способов добиться этого, но, вероятно, если это домашнее задание, ваш профессор недавно говорил о том, как он или она хотели бы, чтобы вы его решили.

По сути, вы будете переопределять программу * nix "bc". Реализация GNU является свободным программным обеспечением, и вы можете получить код для проверки здесь: https://www.gnu.org/software/bc/

...