#
# Esempio di utilizzo dei literals nel parser ricorsivo
#
# Calcola la tabella dei valori di f(x) con:
# x < 10 dove x appartenente a N0
#
# Dario Fagotto
#
from Parser import parse, compute, Literals
L = {}
L.update(Literals) # Copy Literals consts
if __name__ == '__main__':
i = raw_input('f(x): ').lower() # Makes the parser case-insensitive
while i != '':
print
p = parse(i)
for i in range(10):
L['x'] = i
print 'f(%i): %f' % (i, compute(p, L))
print
i = raw_input('f(x): ').lower()