Você está na página 1de 9

#include <iostream>

double pi= 3.141592654;


//******************************************************************************
void Tela()
{
system ("cls");
printf ("Calculadora Cient%cfica \n\n", 161);
printf ("1- Fatorial \n\n");
printf ("2- Pot%cncia \n\n", 136);
printf ("3- Seno \n\n");
printf ("4- Cosseno \n\n");
printf ("5- Tangente \n\n");
printf ("6- Logaritmo Neperiano \n\n");
printf ("7- Logaritmo Decimal \n\n");
printf ("8- Exponencial \n\n");
printf ("9- Ra%czes de uma Fun%c%co do 2%c grau \n\n", 161, 135, 198, 167);
printf ("10- Raiz Quadrada \n\n");
printf ("11- Juros Compostos \n\n");
printf ("12- Sair \n\n");
printf ("Escolha a sua op%c%co: \n\n", 135, 198);
}
//******************************************************************************
//CALCULAR JUROS COMPOSTOS
void telinha ()
{
system ("cls");
printf ("Juros Compostos \n\n");
printf ("1- Montante \n\n");
printf ("2- Capital \n\n");
printf ("3- Taxa \n\n");
printf ("4- Tempo \n\n");
printf ("5- Voltar \n\n");
printf ("Escolha a sua op%c%co: \n\n", 135, 198);
}
// CALCULAR FATORIAL
double fatorial(int fat)
{
double f=1;
while (fat>1)
{
f=f*fat;
fat--;
}
return (f);
}
//******************************************************************************
//CALCULAR ELEVADO
double elevado( double x, int n)
{
double R=1;
for(int i=1;i<=n;i++)
{
R=R*x;

}
return(R);
}
//******************************************************
//CALCULAR EXPOENTE
double exp(double x)
{
double e=0;
for(int n=0;n<170;n++)
{
e= e + elevado(x,n)/fatorial(n);
}
return(e);
}
//******************************************************************************
//CALCULAR SENO
double seno(double x)
{
double w=0;
for (int n=0;n<84;n++)
{
w=w+elevado(-1,n)*elevado(x,2*n+1)/fatorial(2*n+1);
}
return (w);
}
//******************************************************************************
//CALCULAR COSSENO
double cosseno(double x)
{
double w=0;
for (int n=0;n<84;n++)
{
w=w+elevado(-1,n)*elevado(x,2*n)/fatorial(2*n);
}
return (w);
}
//CALCUULAR TANGENTE
double tangente(double x)
{
return (seno(x)/cosseno(x));
}
//******************************************************************************
// LOGARITMO NEPERIANO
double loge_convergente(double x)

{
double ln=0;
for(int n=1;n<1000;n++)
{
ln= ln + elevado(-1,n+1)*elevado(x-1,n)/n;
}
return(ln);
}
//******************************************************************************
double loge(double x)
{
double ln=0;
int contador=0;
while(x>=2)
{
x = x/(1.25);
contador++;
}
if(contador!=0)
{
ln = contador*loge_convergente(1.25) + loge_convergente(x)
;
}
else
{
ln = loge_convergente(x);}
return(ln);
}
//*****************************************************************************
//LOGARITMO DECIMAL
double logdec(double x)
{
return (loge(x)/loge(10));
}
//******************************************************************************
//POTENCIAL
double potencial(double x, double n)
{
return(exp(n*loge(x)));
}
//*******************************************************************
//CALCULAR RAIZ QUADRADA
double raiz(double x)
{double b;
b=potencial(x,0.5);
return (b);
}

//******************************************************************************
main ()
{
int op, fat;
float a,b,c,d,e;
double x,y;
do{
Tela();
scanf ("%d", &op);
//FUNAO FATORIAL
if (op==1)
{
system ("cls");
printf ("Informe o valor do fatorial que deseja:");
scanf ("%d", &fat);
printf ("\n Resultado: %d!= %.0lf \n\n", fat, fatorial(fat));
system ("pause");
}
//******************************************************************************
//FUNAO POTENCIA
if (op==2)
{
double x,n,r;
system ("cls");
printf ("Informe o valor da base: ");
scanf ("%lf", &x);
printf ("Informe o valor do expoente: ");
scanf ("%lf", &n);
r= potencial(x,n);
printf ("Resultado= %lf\n\n", r);
system ("pause");
}
//******************************************************************************
//FUNAO SENO
if (op==3)
{
double g,z;
system ("cls");
printf ("Informe o valor do %cngulo: " ,131);
scanf ("%lf", &g);
z=pi*g/180;
printf ("Seno= %lf\n\n", seno(z));
system ("pause");
}
//******************************************************************************

//FUNAO COSSENO
if (op==4)
{
double g,z;
system ("cls");
printf ("Informe o valor do %cngulo: ", 131);
scanf ("%lf", &g);
z=pi*g/180;
printf ("Cosseno= %lf\n\n", cosseno(z));
system ("pause");
}
//******************************************************************************
//FUNAO TANGENTE
if (op==5)
{
double g,z;
system ("cls");
printf ("Informe o valor do %cngulo: ", 131 );
scanf ("%lf", &g);
z=pi*g/180;
printf ("Tangente= %lf\n\n", tangente(z));
system ("pause");
}
//******************************************************************************
// FUNAO LOGARITMO NEPERIANO
if (op==6)
{
double x,;
int contador=0;
system ("cls");
printf ("C%clculo da Fun%c%co Neperiano", 160, 135, 198);
printf ("\n\nInforme o valor de x:");
scanf ("%lf", &x);
if (x<0)
{
printf ("\n\n N%cO EXISTE VALOR\n\n",199);
}
else
{
printf ( "Resultado= %lf\n\n", loge(x));
}
system ("pause");

//******************************************************************************
//FUNAO LOGARITMO DECIMAL
if (op==7)
{
double x,;
int contador=0;
system ("cls");
printf ("C%clculo da fun%c%co Logaritmo",160, 135, 198 );
printf ("\n\nInforme o valor de x:");
scanf ("%lf", &x);
if (x<0)
{
printf ("\n\n N%cO EXISTE VALOR\n\n",199);
}
else
{
printf ( "Resultado= %lf\n\n", logdec(x));
}
system ("pause");
}
//******************************************************************************
//FUNAO EXPONENCIAL
if (op==8)
{
system ("cls");
printf ("Informe o valor de x:");
scanf ("%lf", &x);
printf ("\n Resultado= %lf \n\n", exp(x));
system ("pause");
}
//******************************************************************************
//RAIZES DE UMA FUNAO DO 2 GRAU
if (op==9)
{
system ("cls");
printf ("Informe o valor do a da fun%c%co:", 135, 198);
scanf ("%f",&a);
printf ("Informe o valor do b da fun%c%co:", 135, 198);
scanf ("%f", &b);
printf ("Informe o valor do c da fun%c%co:", 135, 198);
scanf ("%f", &c);
d= b*b-(4*a*c);
if (d<0)
{
printf ("\n\nRAIZ N%cO EXISTE\n\n",199);
}

else
{
x= (-b+raiz(d))/(2*a);
y= (-b-raiz (d))/(2*a);
printf ("Ra%czes= %lf e %lf\n\n",161,x,y);
}
system ("pause");
}
//******************************************************************************
//RAIZ QUADRADA
if (op==10)
{
system ("cls");
float a,b;
printf ("Digite o valor de x:");
scanf ("%f", &a);
if (a<0)
{
printf ("\n\nRAIZ N%cO EXISTE\n\n",199);
}
else
{
b= raiz (a);
printf ("Raiz Quadrada = %f\n\n", b);
}
system ("pause");
}
//******************************************************************************
//JUROS COMPOSTOS
if (op==11)
{
int op;
do{
telinha();
scanf ("%d", &op);
//******************************************************************************
//CALCULAR MONTANTE
if(op==1)
{
double m,c,i,t;
system ("cls");
printf ("Digite o valor do capital: ");
scanf ("%lf", &c);
printf ("Digite o valor da taxa: ");
scanf ("%lf", &i);
printf ("Digite o valor do tempo: ");
scanf ("%lf", &t);
m=c*potencial (1+i,t);

printf ("Montante igual: %lf\n\n",m);


system ("pause");
}
//******************************************************************************
//CALCULAR CAPITAL
if(op==2)
{
double m,c,i,t;
system ("cls");
printf ("Digite o valor
scanf ("%lf", &m);
printf ("Digite o valor
scanf ("%lf", &i);
printf ("Digite o valor
scanf ("%lf", &t);
c=m/potencial (1+i,t);
printf ("Capital igual:
system ("pause");

do montante: ");
da taxa: ");
do tempo: ");
%lf\n\n",c);

}
//******************************************************************************
//CALCULAR TAXA
if (op==3)
{
double m,c,i,t;
system ("cls");
printf ("Digite o valor do montante: ");
scanf ("%lf", &m);
printf ("Digite o valor do capital: ");
scanf ("%lf", &c);
printf ("Digite o valor do tempo: ");
scanf ("%lf", &t);
i=potencial (m/c,1/t)-1;
printf ("Taxa igual: %lf\n\n",i);
system ("pause");
}
//******************************************************************************
//CALCULAR TEMPO
if (op==4)
{
double m,c,i,t;
system ("cls");
printf ("Digite o valor do montante: ");
scanf ("%lf", &m);
printf ("Digite o valor do capital: ");
scanf ("%lf", &c);
printf ("Digite o valor da taxa: ");
scanf ("%lf", &i);
t=logdec(m/c)/logdec(1+i);
printf ("Tempo igual: %lf\n\n",t);

system ("pause");
}
//******************************************************************************
}
while (op!=5);
}
}while (op!=12);
}

Você também pode gostar