Jump to content


xulambs

Member Since 07/02/2006
Offline Last Active 12/05/2014, 12:14
-----

#968820 Ajuda Na Conclusão Da Calculadora Em C++

Posted by xulambs on 28/05/2009, 11:46

Bom dia galera, tudo bem.

Bom, estou desenvolvendo uma calculadora para um trabalho de faculdade.
Essa calculadora resolve as operações perfeitamente.

Ela funciona da seguinte forma:

10 + 10 = 20
10 - 5 = 5
20 * 2 = 40
30 / 3 = 10

Até aqui está ok. Mas eu gostaria que ela fizesse a operação direto, por exemplo:

10 + 10 = 20 - 5 = 15 * 2 = 30 / 3 = 10

Então galera, é somente essa dúvida, já coloquei e tirei do while e nada. Se alguém puder me ajudar, já agradeço...

O código está abaixo:

#include <cstdlib>
#include <iostream>
using namespace std;

int soma(int n1, int n2)
{
	int somatudo;
	somatudo = n1 + n2;
	return somatudo;
}
int subtrai(int n1, int n2)
{
	int subtraitudo;
	subtraitudo = n1 - n2;
	return subtraitudo;
}
int multiplic(int n1, int n2)
{
	int multiplictudo;
	multiplictudo = n1 * n2;
	return multiplictudo;
}
int divide(int n1,int n2)
{
	int dividetudo;
	dividetudo = n1 / n2;
	return dividetudo;
}
int porcento(int n1, int n2)
{
	int porcentotudo;
	porcentotudo = (n1*n2)/100;
	return porcentotudo;
}

int main()
{// inicio int main
	int valor,num, cont,op;
	float result,num1, num2;
	char sair,operacao,v;
	
	cout<<"########################################################"<<endl;
	cout<<"#													  #"<<endl;
	cout<<"#   PAINEL CALCULADORA								 #"<<endl;
	cout<<"#													  #"<<endl;
	cout<<"#"<<"   + --> soma										 #"<<endl;
	cout<<"#"<<"   - --> subtracao									#"<<endl;
	cout<<"#"<<"   * --> multiplicacao								#"<<endl;
	cout<<"#"<<"   / --> divisao									  #"<<endl;
	cout<<"#"<<"   % --> porecentagem								 #"<<endl;
	cout<<"#													  #"<<endl;
	cout<<"#"<<"  [ C ] COMECAR OU CONTINUAR [ F ] PARA FECHAR		#"<<endl;
	cout<<"#													  #"<<endl;
	cout<<"########################################################"<<endl<<endl;
   
   
   

	 
	cout<<endl<<" --> ";
	cin>>num1;
	//v:
		  //cont;
	cin>>operacao;
		 if (operacao == '+')op = 1;
	else if (operacao == '-')op = 2;
	else if (operacao == '*')op = 3;
	else if (operacao == '/')op = 4;
	else if (operacao == '%')op = 5;
		  
	cout<<endl<<endl;
	 do {
	switch(op){
				case 1:
					 cin>>num2;
					 result = soma(num1, num2);
					 cout<<num1<<" + "<<num2<<" = "<<result;
					 valor = result;
					 break;
				case 2:
					 cin>>num2;
					 result = subtrai(num1, num2);
					 cout<<num1<<" - "<<num2<<" = "<<result;
					 valor = result;
					 break;
				case 3:
					 cin>>num2;
					 result = multiplic(num1, num2);
					 cout<<num1<<" * "<<num2<<" = "<<result;
					 valor = result;
					 break;
				case 4:
					 cin>>num2;
					 result = divide(num1, num2);
					 cout<<num1<<" / "<<num2<<" = "<<result;
					 valor = result;   
					 break;
				case 5:
					 cin>>num2;
					 result = porcento(num1, num2);
					 cout<<num1<<" % "<<num2<<" = "<<result;
					 valor = result;				   
					 break;
				default:
					 cout<<endl;
					 cout<<"NUMERO ERRADO, TENTE DE NOVO"<<endl;
					 cout<<endl;
					 break;
					 
}// final switch case
}// final do
				while(sair!='d');
	
	system("PAUSE");
	return EXIT_SUCCESS;
}// final int main



IPB Skin By Virteq