To evaluate postfix expression.

 #include<stdio.h>

#include<ctype.h>

#include<math.h>

int s[20],top=-1;

int main()

{

char postfix[30];

int op1,op2,i,j,res;

printf("\n Enter Postfix Expression:");

gets(postfix);

for(i=0;postfix[i]!='\0';i++)

{

if(isdigit(postfix[i]))

{

top=top+1;

s[top]=postfix[i]-48;

}

else

{

op2=s[top--];

op1=s[top--];

switch(postfix[i])

{

case '+':res=op1+op2;

break;

case '-':res=op1-op2;

break;

case '*':res=op1*op2;

break;

case '/':res=op1/op2;

break;

case '%':res=op1%op2;

break;

case '^':res=pow(op1,op2);

break;

default:printf("\nInvaid Operator In Postfix Expression");

exit(0);

}

top=top+1;

s[top]=res;

}

}

printf("\n The Result of Postfix Expression is %d",s[top]);

return 0;

}


Comments

Popular posts from this blog

Create a Binary Search Tree of integers and perform the following operations (i)insert (ii) delete (iii). Search (iv) traversals (pre-order, in-order, post-order) BST

Creation Of DLL

Develop non-recursive functions to perform search for a Key value in a given list using (i) Binary Search Non Recursive