//---------- parser ---------------
//                               //
//                               //
//-------------------------------//

#include <stdio.h>
#include <math.h>
#include "Parser.h"

#define str_size 255

int tka4anf(int *res)
{
 int i=0;
 char s[str_size];
scanf("%s", s); getchar();
 while ( s[i] != '\0') {
    if (s[i]<'0' || s[i]>'9')
     if (s[i]!='-') {
        printf("Input not correct!");
       return 1; }
    i++;
 }
  (*res) = atoi(s); 
return 0;
}

int main()
{
int *values;
int result;
int i;
bool wan;
char c, *s;
TExpress expression;

        printf ("Input an expression: ");
	expression = GetExpression();
	values = (int*)calloc(expression.count, sizeof(int));

do {
	for (i = 0; i < expression.count; i++)
	    do 
             printf("\n %c = ", expression.vars[i]);
	    while (tka4anf(&values[i])) ;
	  

	  result = Calculate(expression.tree, values);
	  printf("\n Total: %d\n", result);
	        if (expression.count == 0) break;
          printf("Continue?\n");
	  scanf("%c", &c);
	  wan = (c == 'y' || c=='Y');
		
} while (wan);

return 0;
}
