Está en la página 1de 7

#include

#include
#include
#include
#include

<iostream.h>
<conio.h>
<stdio.h>
<math.h>
<E:\grafica2.h>

float A=0, B=0, h=0, a=0, b=0, c=0, d=0, e=0, k=0, sumf=0,var[10]={0}, fa=0, fb=
0, resultado=0, varia=0,Era=0,res2=0;
int tipo=0,t=0,n;
void valores()
{
if(tipo==1)
{
cout<<endl<<" Introdusca los valores de los coeficientes"<<endl<<endl;
for(int x=0;x<t;x++)
{
cout<<char(65+x)<<" = ";
cin>>var[x];
}
cout<<"K = ";
cin>>k;
a=var[0];
b=var[1];
c=var[2];
d=var[3];
e=var[4];
}
if(tipo==2)
{
if(t==1)
{
cout<<" introduce los valores de A.exp^BX"<<endl;
cout<<"A = ";
cin>>a;
cout<<"B = ";
cin>>b;
}
if(t==2)
{
cout<<" introduce los valores de (A.exp^BX)+(C.X^D)+K"<<
endl;
cout<<"A
cin>>a;
cout<<"B
cin>>b;
cout<<"C
cin>>c;
cout<<"D
cin>>d;
cout<<"K
cin>>k;

= ";
= ";
= ";
= ";
= ";

}
}
if(tipo==3)
{
cout<<"

Introdusca los volores de:"<<endl;

cout<<"A
cin>>a;
cout<<"B
cin>>b;
cout<<"C
cin>>c;
cout<<"D
cin>>d;
cout<<"K
cin>>k;

= ";
= ";
= ";
= ";
= ";

}
}
/////////////////////////////////////////////////////////////////
void menu()
{
//clrscr();
char opc=0,opc2=0;
cout<<" Eliga una opcion(sin dar enter)...."<<endl;
cout<<"
1).Polinomial"<<endl;
cout<<"
2).Exponencial"<<endl;
cout<<"
3).Trigonometricas"<<endl;
opc=getch();
switch(opc)
{
case '1':clrscr();tipo=1;
cout<<" Eliga una opcion(sin dar enter)...."<
<endl;
cout<<"1). AX+K"<<endl;
cout<<"2). AX^2+BX+K"<<endl;
cout<<"3). AX^3+BX^2+CX+K"<<endl;
cout<<"4). AX^4+BX^3+CX^2+DX+K"<<endl;
cout<<"5). AX^5+BX^4+CX^3+DX^2+EX+K";
opc2=getch();
switch(opc2)
{
case '1':clrscr();t=1;cout<<"Par
a AX+K";valores();break;
case '2':clrscr();t=2;cout<<"Par
a AX^2+BX+K";valores();break;
case '3':clrscr();t=3;cout<<"Par
a AX^3+BX^2+CX+K";valores();break;
case '4':clrscr();t=4;cout<<"Par
a AX^4+BX^3+CX^2+DX+K";valores();break;
case '5':clrscr();t=5;cout<<"Par
a AX^5+BX^4+CX^3+DX^2+EX+K";valores();break;
} break;
case '2':clrscr(); tipo=2;
cout<<" Eliga una opcion(sin dar enter)...."<<endl;
cout<<"1). A.exp^BX"<<endl;
cout<<"2). (A.exp^BX)+CX+K"<<endl;
opc2=getch();
switch(opc2)
{
case '1': t=1; clrscr();

valores();
break;
case '2': t=2; clrscr();
valores();
break;
} break;
case '3':clrscr(); tipo=3;
cout<<" Eliga una opcion(sin dar enter)...."<
<endl;
cout<<"1). A.sen(BX)+(C.X^D)+K"<<endl;
cout<<"2). A.cos(BX)+(C.X^D)+K"<<endl;
cout<<"3). A.tan(BX)+(C.X^D)+K"<<endl;
opc2=getch();
switch(opc2)
{
case '1':t=1;clrscr();
cout<<"A.sen(BX
)+(C.X^D)+K"<<endl;
valores();break
;
case '2':t=2;clrscr();
cout<<"A.cos(BX)
+(C.X^D)+K";
valores();break
;
case '3':t=3;clrscr();
cout<<"A.tan(BX
)+(C.X^D)+K"<<endl;
valores();break
;
}break;
}
}
////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////
void trapecio()
{
fa=0;
fb=0;
resultado=0;
sumf=0;
varia=0;
h=(B-A)/n;
if(tipo==1)
{
e=t;
fa=0;

fb=0;
for(int x=0;x<t;x++)
{
fa+=(var[x]*pow(A,e));
fb+=(var[x]*pow(B,e));
//sumf=0;
//for( int i=1;i<n;i++)
//{
// sumf+=(var[x]*pow((A+(i*h)),e))+k;
//}
e--;
}
if(t==1)
{
for( int i=1;i<n;i++)
{
sumf+=(a*((A+(i*h))))+k;
}
}
if(t==2)
{
for( int i=1;i<n;i++)
{
sumf+=(a*pow((A+(i*h)),2))+(b*(A+(i*h)))+k;
}
}
if(t==3)
{
for( int i=1;i<n;i++)
{
sumf+=(a*pow((A+(i*h)),3))+(b*pow((A+(i*h)),2))+(c*(A+(i*h)))+k;
}
}
if(t==4)
{
for( int i=1;i<n;i++)
{
sumf+=(a*pow((A+(i*h)),4))+(b*pow((A+(i*h)),3))+(c*pow((A+(i*h))
,2))+(d*(A+(i*h)))+k;
}
}
if(t==5)
{
e=var[4];
for( int i=1;i<n;i++)
{
sumf+=(a*pow((A+(i*h)),5))+(b*pow((A+(i*h)),4))+(c*pow((A+(i*h))
,3))+(d*pow((A+(i*h)),2))+(e*(A+(i*h)))+k;
}
}
fa=fa+k;
fb=fb+k;
}
if(tipo==2)

{
if(t==1)
{
fa=a*exp(b*A);
fb=a*exp(b*B);
for( int i=1;i<n;i++)
{
varia=A+(i*h);
sumf+=a*exp(b*varia);
}
}
if(t==2)
{
fa=(a*exp(b*A))+(c*pow(A,d))+k;
fb=(a*exp(b*B))+(c*pow(B,d))+k;
for( int i=1;i<n;i++)
{
varia=A+(i*h);
sumf+=(a*exp(b*varia))+(c*pow(varia,d))+k;
}
}
}
if(tipo==3)
{
float b0;
b0=b;
b=((b*3.1416)/180);
if(t==1)
{
fa=(a*sin(b*A))+(c*pow(A,d))+k;
fb=(a*sin(b*B))+(c*pow(B,d))+k;
for( int i=1;i<n;i++)
{
sumf+=(a*sin(b*(A+(i*h))))+(c*pow((A+(i*h)),d))+k;
}

}
if(t==2)
{
fa=(a*cos(b*A))+(c*pow(A,d))+k;
fb=(a*cos(b*B))+(c*pow(B,d))+k;
for( int i=1;i<n;i++)
{
sumf+=(a*cos(b*(A+(i*h))))+(c*pow((A+(i*h)),d))+k;
}
}
if(t==3)
{
fa=(a*tan(b*A))+(c*pow(A,d))+k;
fb=(a*tan(b*B))+(c*pow(B,d))+k;
for( int i=1;i<n;i++)
{
sumf+=(a*tan(b*(A+(i*h))))+(c*pow((A+(i*h)),d))+k;
}

}
}
resultado=(h/2)*(fa+fb+(2*sumf));
}
///////////////////////////////////////////////////////////////////
void dato()
{
textcolor(RED);
cout<<endl<<"Dame el intervalo a integrar";
cout<<endl<<"a= ";
cin>>A;
cout<<"b= ";
cin>>B;
n=20;
graficas(tipo,t,a,b,c,d,k,e);
trapecio();
clrscr();
textcolor(YELLOW);
clrscr();
gotoxy(2,3);cout<<"Iter";gotoxy(2,5);cout<<"1";
gotoxy(8,3);cout<<"n";gotoxy(8,5);cout<<"20";
gotoxy(14,3);cout<<"Valor";gotoxy(14,5);cout<<resultado;
gotoxy(30,3);cout<<"Era"; gotoxy(30,5);cout<<"------";
int j=2;
n=40;
Era=100;
while(Era>0.0005)
{
res2=resultado;
trapecio();
Era=(fabs((resultado-res2)/resultado))*100;
gotoxy(2,j+4);cout<<j;
gotoxy(8,j+4);cout<<n;
gotoxy(14,j+4);cout<<resultado;
gotoxy(30,j+4);cout<<Era;
n=n+n;
j++;
}
cout<<endl<<endl<<"
s: ";
printf("%.4f",resultado);
getch();
}
void main ()
{

La integral en el intervalo ["<<A<<","<<B<<"]e

clrscr();
textcolor(GREEN);
clrscr();
cout<<"*******Integracion por el metodo del trapecio**************"<<endl<<en
dl<<endl;
menu();
dato();
getch();
}

También podría gustarte