C++ Calculator

Results 1 to 1 of 1
  1. #1
    Enthusiast ghPer is offline
    MemberRank
    Jul 2013 Join Date
    32Posts

    C++ Calculator

    A simple calculator

    Code:
    #include<iostream>
    
    
    using namespace std;
    
    
    int main()
    {
    	char buffer[256];
    	do
    	{
    		int v = 1;
    		cin >> buffer;
    		
    		bool opF = false;
    		bool opS = false;
    		bool opT = false;
    		bool opA = false;
    		for(int i =0; i < strlen(buffer); i++)
    		{
    			char op = buffer[i];
    			
    			
    			switch ( op)
    			{
    				case '+':
    				{
    					if( opF )
    					{
    						v += buffer[i+1]-'0';
    						opF = false;
    						
    					}
    					else
    					{
    						v+= buffer[i-1]-'0';
    						v+= buffer[i+1]-'0';			
    					//	opF = true;
    						v--;
    					}
    					opF=true;
    
    
    				}break;
    				
    				case '-':
    				{
    					if( opS )
    					{
    						v -= buffer[i+1]-'0';
    						opS = false;
    						v+=1;
    					}
    					else
    					{
    						v-= buffer[i-1]-'0';
    						v-= buffer[i+1]-'0';			
    					//	opS = true;
    						v+=2;
    					}
    
    
    					opS=true;
    				}break;
    				
    				case '*':
    				{
    					if( opT )
    					{
    						v *= buffer[i+1]-'0';
    						opT = false;
    					}
    					else
    					{
    						v*= buffer[i-1]-'0';
    						v*= buffer[i+1]-'0';			
    					//	opS = true;
    					//	v+=2;
    					}
    
    
    					opT=true;
    				}break;
    				case '/'	:
    				{
    					if( opA )
    					{
    						v /= buffer[i+1]-'0';
    						opA = false;
    						
    					}
    					else
    					{
    						v/= buffer[i-1]-'0';
    						v/= buffer[i+1]-'0';			
    					//	opS = true;
    					//	v+=2;
    					}
    
    
    					opA=true;
    				}break;						
    
    
    				default:break;
    			}
    		}
    		cout << v << endl;
    
    
    	//	cout << buffer << endl;
    	}
    	while(buffer[0] != '0');
    	
    }
    Enter this: 9+1+2+1/2*2 and press enter




Advertisement