El caso es que haciendo memoria, recordaba que ya se había tratado el tema (varias veces) aunque en algunas el interesado no se volvió a interesar por el tema y se quedó a medias...
Me ha costado bastante encontrar algunos de los hilos debido precisamente al mierdoso título de 'ayuda' con que suelen figurar, en vez de un título explícito que designe su cometido... He buscado los hilos a partir de mi alias, pero es probable que haya más hilos del tema, toda vez que el foro tiene cierta antigüedad.
Te los pongo en el orden de lectura que recomiendo que leas, los primeros son más bien introductorios, los 3 últimos incorporan pseudocódigo, el último incluso la 'calculadora' de notación polaca...
Una entrada al tablero del juego (el metalenguaje BNF):
https://foro.elhacker.net/programacion_general/iquestcomo_programar_un_depurador_avanzado-t469809.0.html;msg2124429;topicseen#msg2124429Un ejemplo para empezar con BNF:
https://foro.elhacker.net/programacion_cc/transformar_una_entrada_de_palabras_en_entrada_matematica-t474595.0.html;msg2140102;topicseen#msg2140102Y otro ejemplo más:
https://foro.elhacker.net/index.php?dummy=1;action=search2Unas pistas de inicio, para alguien que no parecía más intereado (es breve):
https://foro.elhacker.net/programacion_general/crear_un_lenguaje_de_programacion_basico-t505609.0.html;msg2224427;topicseen#msg2224427Aquí una sencilla y breve introducción a la teoría de autómatas finitos y BNF, etc..
https://foro.elhacker.net/programacion_general/como_se_hace_este_automata_alguien_que_me_de_una_solucion-t494021.0.html;msg2189095;topicseen#msg2189095En este puedes ver que se aproxima mucho a justamente cierto tipo de expresiones numéricas y algebraicas que parece ser lo que buscas (otros son más aptos para casos más complejos, menos restringidos):
Se aborda la especificación, una tabla de estados para luego pasar al analizador léxico... y dado la simplicidad es también el analizado sintáctico)...
https://foro.elhacker.net/programacion_cc/dividir_polinomio_en_monomios_c-t504801.0.html;msg2221918;topicseen#msg2221918Considera que una una pequeña calculadora es una práctica de un minilenguaje de programación... muy útil y acertada para introducirse en el tema más a fondo, sin profundizar aún en todos los vericuetos de la teoría de compiladores...
En este puedes leer y empaparte (no incorpora la 'calculadora')
https://foro.elhacker.net/programacion_cc/ayuda_calculadora-t484397.0.html;msg2164515;topicseen#msg2164515Aunque abordo todo en un solo mensaje te recomiendo leer el hilo al completo (este si incluye programar la calculadora):
https://foro.elhacker.net/programacion_cc/ayuda-t499837.10.htmlCuando avances si tienes algún problema, pregunta. Codificarlo será siempre trabajo tuyo, yo te ayudo con la teoría, si no sería una tarea...