#include "iostream"
#include "stack"
#include "string"
#include "stdafx.h"
#include "stdafx.cpp"
#include <fstream>
using namespace std;
void main()
{
int i;
int string; prefixExp;
char token;
int value, value1, value2;
stack<int> s; //Declare a stack of int
ifstream myfile;
ofstream outfile;
myfile.open("Prefix.txt", ios::in); //opening streams
outfile.open("output.txt", ios::out);
while (!myfile.eof()) //while not end of input file
{
stack<char> operators;
stack<char> flags;
string line;
string outputLine;
getline(myfile, line); //read the next line of file and store into ‘line’
while((i < prefixExp.size()) && (token != '='))
{
if(isdigit(token))
{
value = token - '0';
s.push(value);
}
else
{
value2 = s.top();
s.pop();
value1 = s.top();
s.pop();
switch(token)
{
case '+': value = value1 + value2;
break;
case '-': value = value1 - value2;
break;
case '*': value = value1*value2;
break;
case '/': value = value1/value2;
break;
case 'M': value = value1%value2
}
s.push(value);
}
i++;
token = prefixExp[i];
}
value = s.top();
s.pop();
cout << prefixExp << " " << value << endl;
break;
}
This post has been edited by JackOfAllTrades: 23 March 2010 - 08:50 AM
Reason for edit:: Fixed code tags.

New Topic/Question
Reply




MultiQuote





|