diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..6abfca8 --- /dev/null +++ b/Makefile @@ -0,0 +1,14 @@ +# https://github.com/BankHapoalim/calc.git +# to run this code type make in command line and see prog file create +CC=gcc +CFLAGES= -c -Wall +all: prog +prog: calc.o helpers.o + $(CC) calc.o helpers.o -lm -o prog +calc.o: calc.c + $(CC) $(CFLAGES) calc.c +helpers.o: helpers.c + $(CC) $(CFLAGES) helpers.c +clean: + rm -rf *.o + diff --git a/calc.c b/calc.c index dca5452..4c742f4 100644 --- a/calc.c +++ b/calc.c @@ -33,7 +33,7 @@ static struct token* opStack; static int outCount; static double* outStack; -static const int binary[] = { 1, 1, 1, 1, 1, 0, 0, 0, 0, 0 }; +static const int binary[] = { 1, 1, 1, 1, 1, 1, 0, 0, 0, 0 }; static const int precedence[] = { 0, 0, 1, 1, 1, 2, 3, 4, 4, 5 }; static const int association[] = { 1, 1, 1, 1, 1, 0, 0, 0, 0, 0 }; @@ -94,6 +94,10 @@ int execute(struct token temp) { case '#': result = pow(d1, d2); break; + case '^': + result = pow(d1, d2); + break; + } }