سلام خواهش می کنم یک برنامه ارزیابی عبارات پسوندی وپیشوندی وهمچنین تبدیل عبارات پسوندی را هر کیداره برام بفرسته![]()
سلام خواهش می کنم یک برنامه ارزیابی عبارات پسوندی وپیشوندی وهمچنین تبدیل عبارات پسوندی را هر کیداره برام بفرسته![]()
سلام
این یه برنامه هستش که عبارت infiX رو به postfiX تبدیل میکنه
#include<iostream.h>
#include<conio.h>
#include<string.h>
#include <stdio.h>
#include <dos.h>
#include <alloc.h>
int push(char stack[],char ch,int &top)
**
if(top==20)
return 0;
else
stack[top++]=ch;
}
int pop(char *stack,int &top)
**
if(top==0)
return 0;
else
return stack[--top];
}
void convert(int num,char inf[],int pos)
**
char opr[]="+-*/()";
for(int i=pos;i<strlen(inf);i++)
**
if(!(strchr(opr,inf[i])))
num=num*10+inf[i]-48;
else
break;
}
}
void main()
**
cout<<" \\|||/ "<<endl;
cout<<" (o o) "<<endl;
cout<<"---ooO(_)Ooo--- HaW3D"<<endl<<endl;
char stack[21],inf[20],opr[]="+-*/)";
int top=0;
int num1=0,num2=0;
char aml;
printf("Enter an infix statument :");
scanf("%s",inf);
convert(num1,inf,0);
printf("%d\n",num1);
for(int i=0;i<strlen(inf);i++)
**
if(inf[i]!='(')
if(!(strchr(opr,inf[i])))
printf("%c",inf[i]);
else if((inf[i]!=')'))
push(stack,inf[i],top);
else
printf("%c",pop(stack,top));
}
for(i=top;i>0;i--)
**
printf("%c",pop(stack,top));
}
}
برای تبدیل به prefiX هم تقریبا همون روشه
برای پیدا کردن جوابش یه الگوریتم پیدا کرده بودم که انشا ا... بعدا میگم(یعنی الان خاطرم نیست)
سلام براي ديدن برنامه اي كه ميخواي به كتاب ساختمان داده ها در C++نوشته جعفرنژاد قمي صفحه78 مراجعه كن
هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)