Program No.1.A
Demonstrate the following coding standards by writing a C program to evaluate a postfix evaluation:
1. Naming convention.
2. Active Names for functions.
3. Consistent indentations and brace styles.
4. Proper parenthesizing to resolve the ambiguity.
5. Proper documentation.
Solution:
#include<stdio.h>
struct stack{
int array[20];
int top;
}s;
void push(int element)
{
s.array[++s.top] = element;
}
int pop()
{
return s.array[s.top--];
}
int main()
{
char exp[20];
char *e;
int n1,n2,n3,num;
s.top=-1;
printf("Enter the expression :: ");
scanf("%s",exp);
e = exp;
while(*e != '\0')
{
if(isdigit(*e))
{
num = *e - 48;
push(num);
}
else
{
n1 = pop();
n2 = pop();
switch(*e)
{
case '+':
{
n3 = n1 + n2;
break;
}
case '-':
{
n3 = n2 - n1;
break;
}
case '*':
{
n3 = n1 * n2;
break;
}
case '/':
{
n3 = n2 / n1;
break;
}
}
push(n3);
}
e++;
}
printf("\nThe result of expression %s = %d\n\n",exp,pop());
return 0;
}
Demonstrate the following coding standards by writing a C program to evaluate a postfix evaluation:
1. Naming convention.
2. Active Names for functions.
3. Consistent indentations and brace styles.
4. Proper parenthesizing to resolve the ambiguity.
5. Proper documentation.
Solution:
#include<stdio.h>
struct stack{
int array[20];
int top;
}s;
void push(int element)
{
s.array[++s.top] = element;
}
int pop()
{
return s.array[s.top--];
}
int main()
{
char exp[20];
char *e;
int n1,n2,n3,num;
s.top=-1;
printf("Enter the expression :: ");
scanf("%s",exp);
e = exp;
while(*e != '\0')
{
if(isdigit(*e))
{
num = *e - 48;
push(num);
}
else
{
n1 = pop();
n2 = pop();
switch(*e)
{
case '+':
{
n3 = n1 + n2;
break;
}
case '-':
{
n3 = n2 - n1;
break;
}
case '*':
{
n3 = n1 * n2;
break;
}
case '/':
{
n3 = n2 / n1;
break;
}
}
push(n3);
}
e++;
}
printf("\nThe result of expression %s = %d\n\n",exp,pop());
return 0;
}
First question is evaluate the Postfix Expression!!..
ReplyDeleteYeah Thanks
Delete