Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- int temp=0,sum=0,TotalSum=0;
- struct Node{
- int element;
- Node *NextNodeAddress;
- }*Head = (Node *)malloc(sizeof(struct Node));
- Node *AllocateMemory(){
- return (struct Node *)malloc(sizeof(struct Node));
- }
- void Insert(int element){
- if(Head==NULL){
- Head->NextNodeAddress=NULL;
- }
- else{
- Node *NewNode = AllocateMemory();
- NewNode->NextNodeAddress=Head;
- Head=NewNode;
- }
- Head->element=element;
- }
- int Pop(){
- if(Head->NextNodeAddress!=NULL){
- int temp = Head->element;
- Node *FreeMemory=Head;
- Head=Head->NextNodeAddress;
- //free((struct Node *)Head);
- printf("Temp -> %d\n",temp);
- return temp;
- }
- return 0;
- }
- void InsertIntRPM(char element){
- switch(element){
- case '+':
- while(temp=Pop()){sum+=temp;}printf("Add Operation Completed\t");break;
- case '-':
- while(temp=Pop()) {sum-=temp;}printf("Minus Operation Completed\t");break;
- case '*':
- while(temp=Pop()) {sum=1;sum*=temp;}printf("Multiply Operation Completed\t");break;
- case '/':
- while(temp=Pop()) {sum=1;sum/=temp;}printf("Division Operation Completed\t");break;
- }
- printf("\t\n Sum -> %d\n",sum);
- printf("\t\n TotalSum-> %d\n",(TotalSum+=sum));
- sum=temp=0;
- }
- void InsertIntRPM(int element){
- Insert(element);
- }
- void Operation(char element);
- int main() {
- InsertIntRPM(827);
- InsertIntRPM(182);
- InsertIntRPM('+');
- InsertIntRPM(23);
- InsertIntRPM(283);
- InsertIntRPM('-');
- InsertIntRPM(10);
- InsertIntRPM(10);
- InsertIntRPM('*');
- InsertIntRPM(20);
- InsertIntRPM(10);
- InsertIntRPM('/');
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement