#include <iostream>
#include <cstdlib>
#include <cmath>
#include <stdlib.h>
#include <stdio.h>
usingnamespace std;
// Funçõs que serão resposnsaveis pelas operações.
constdouble M_PI = 3.14;
float add (float x, float &y){
y += x;
return y;
}
float sub(float x, float y){
float subtrac;
subtrac= x - y;
return subtrac;
}
float multi (float x, float y){
float multip;
multip= x * y;
return multip;
}
float divi(float x, float y){
float divis;
divis= x / y;
return divis;
}
float fatorial(float x){
if(x == 0)
return 1;
elsereturn x * fatorial(x - 1);
}
float seno(float x){
float sen;
sen=sin((x * M_PI)/180);
return sen;
}
float cosseno(float x){
float coss;
coss=cos((x * M_PI)/180);
return coss;
}
float tange(float x){
float tang;
tang=tan((x*M_PI)/180);
return tang;
}
int main (){
float num, num2;
int op;
string operacao;
while (1)
{
system("cls");
cout <<"\t\t\t======>>>CALCULATOR OF WILSON<<<======\n\n";
cout <<" ABAIXO ESTA O MENU DE OPERACOES"<<endl;
// mostra o menu ao usuario.
cout << " \n(1) Para Soma: ";
cout << " \n(2) Para Subtracao: ";
cout << " \n(3) Para Multiplicacao: ";
cout << " \n(4) Para Divisao: ";
cout << " \n(5) Para Potencia: ";
cout << " \n(6) Para Raiz Quadrada: ";
cout << " \n(7) Para Raiz Cubica: ";
cout << " \n(8) Para Modulo: ";
cout << " \n(9) Para Logaritmo Neperiano: ";
cout << " \n(10) Para Fatorial: ";
cout << " \n(11) Para Seno: ";
cout << " \n(12) Para Cosseno: ";
cout << " \n(13) Para Tangente: \n";
// usuario seleciona operação.
cout<<"\n Escolha uma operacao: ";
cin >> op;
//condição: caso o usuarioa aperte numero invalido
//menu com que chama as funções
switch(op)
{
case 0:
cout << "SAINDO! " << endl;
system("pause");
exit(0);
break;
case 1:
num2 = 0;
cout << "Digite os numerurzins ae: ";
getchar();
cout << "Somando-se os numeros: ";
while(cin >> num && cin.peek() != '\n'){
cout << num << " ";
add(num, num2);
}
cout << num << " ";
add(num, num2);
cout << "obtem-se o numero " << num2 << endl;
break;
case 2:
cout<<"\nDigite o primeiro numero: ";
cin>>num;
cout<<"\nDigite o segundo numero: ";
cin>>num2;
cout<<"\nSubtraindo-se o numero "<<num2<<" do numero "<<num<<" obtem-se o numero "<< sub (num, num2)<< endl;
break;
case 3:
cout<<"\nDigite o primeiro numero: ";
cin>>num;
cout<<"Digite o segundo numero: ";
cin>>num2;
cout<<"\nMultiplicando-se o numero "<<num<<" pelo numero "<<num2<<" obtem-se o numero "<< multi (num, num2)<< endl;
break;
case 4:
cout<<"\nDigite o primeiro numero: ";
cin>>num;
cout<<"Digite o segundo numero: ";
cin>>num2;
cout<<"\nDividindo-se o numero "<<num<<" pelo numero "<<num2<<" obtem-se o numero "<< divi (num, num2)<< endl;
break;
case 5:
cout<<"\nDigite a base: ";
cin>>num;
cout<<"Digite o expoente: ";
cin>>num2;
cout<<"\nElevando-se o numero "<<num<<" ao numero "<<num2<<" obtem-se o numero "<< pow(num, num2)<< endl;
break;
case 6:
cout<<"\nDigite um numero: ";
cin>>num;
cout<<"\nA Raiz Quadrada de "<<num<<" e " << sqrt(num)<< endl;
break;
case 7:
cout<<"\nDigite um numero: ";
cin>>num;
cout<<"\nA Raiz Cubica de "<<num<<" e " << cbrt(num)<< endl;
break;
case 8:
cout<<"\nDigite um numero: ";
cin>>num;
cout<<"\nO modulo de "<<num<<" e " << abs(num)<< endl;
break;
case 9:
cout<<"\nDigite um numero: ";
cin>>num;
cout<<"\nO Logaritmo Neperiano de "<<num<<" e " << log(num)<< endl;
break;
case 10:
cout<<"\nDigite um numero: ";
cin>>num;
cout<<"\nO Fatorial de "<<num<<" e " <<fatorial(num)<< endl;
break;
case 11:
cout<<"\nDigite o Angulo em Graus: ";
cin>>num;
cout<<"\nO Seno de "<<num<<" graus e " << seno(num)<< endl;
break;
case 12:
cout<<"\nDigite o Angulo em Graus: ";
cin>>num;
cout<<"\nO Cosseo de "<<num<<" graus e " << cosseno(num)<< endl;
break;
case 13:
cout<<"\nDigite o Angulo em Graus: ";
cin>>num;
cout<<"\nA Tangente de "<<num<<" graus e " << tange(num)<< endl;
break;
default:
cout<<"NUMERO INVALIDO!\n" << endl;
cout<<"Escolha uma operacao valida. \n";
}
cout<<"\n\t\t\t\t\tDESENVOLVIDO POR WILSON DO CARMO\n\n";
fflush(stdin);
getchar();
}
system("PAUSE");
}