Culminacion de clase Switch
- Erick Bryan Geldres Asto
- 12 abr 2019
- 1 Min. de lectura
Actualizado: 14 abr 2019
#include <iostream>
#include <math.h>
using namespace std;
int main()
{
int opcion;
double Rp1,Rp2,PHIp1,PHIp2,RADp1,RADp2,Xp1,Xp2,Yp1,Yp2,PI=3.141592;
double Xr1,Xr2,Yr1,Yr2,RADr1,RADr2,Rr1,Rr2,PHIr1,PHIr2;
double Xr,Yr;
double Rp,PHIp;
double Xp,Yp,RP,RADP,PHIP;
double Rr,PHIr,RADR,XR,YR;
cout<<"MENU DE COMPLEJOS \n\n";
cout<<"1) Convertir P->R\n";
cout<<"2) Convertir R->P\n";
cout<<"3) Duma de Rectangulares\n";
cout<<"4) Multiplicacion de Polares\n";
cout<<"5) Sumar Polares\n";
cout<<"6) Dividir Rectangulares\n\n";
cout<<"Elija una opcion: ";
cin>> opcion;cout<<endl;
switch(opcion)
{
case 1:cout<<"Convertir P -> R\n\n";
{
cout<<"R1: ";cin>>Rp1;
cout<<"<1: ";cin>>PHIp1;
cout<<"R2: ";cin>>Rp2;
cout<<"<2: ";cin>>PHIp2;
if((Rp1>0)&&(Rp2>0))
{
RADp1=(2*PI*PHIp1)/360;
RADp2=(2*PI*PHIp2)/360;
Xp1=Rp1*cos (RADp1);
Xp2=Rp2*cos (RADp2);
Yp1=Rp1*sin (RADp1);
Yp2=Rp2*sin (RADp2);
cout<<endl;
cout<<"Zp1= "<<Xp1<<"+J"<<Yp1<<endl;
cout<<"Zp2= "<<Xp2<<"+J"<<Yp2<<endl;
} else cout<<"Ingrese un radio mayor a 0"<<endl;
};break;
case 2:cout<<"Convercion R -> P\n";
{
cout<<"X1: ";cin>>Xr1;
cout<<"Y1: ";cin>>Yr1;
cout<<"X2: ";cin>>Xr2;
cout<<"Y2: ";cin>>Yr2;
if((Xr1!=0)&&(Xr2!=0))
{
RADr1=atan (Yr1/Xr1);
RADr2=atan (Yr2/Xr2);
Rr1=sqrt(pow(Xr1,2)+pow(Yr1,2));
Rr2=sqrt(pow(Xr2,2)+pow(Yr2,2));
PHIr1=(RADr1*360)/(2*PI);
PHIr2=(RADr2*360)/(2*PI);
cout<<endl;
cout<<"Zr1= "<<Rr1<<"* <"<<PHIr1<<endl;
cout<<"Zr2= "<<Rr2<<"* <"<<PHIr2<<endl;
}else cout<<"Ingrese un valor de X diferente a 0"<<endl;
};break;
case 3:cout<<"Suma - R\n";
{
cout<<"X1: ";cin>>Xr1;
cout<<"Y1: ";cin>>Yr1;
cout<<"X2: ";cin>>Xr2;
cout<<"Y2: ";cin>>Yr2;
if(Xr1<100)
{
Xr=Xr1+Xr2;
Yr=Yr1+Yr2;
cout<<endl;
cout<<"Zr= "<<Xr<<" +j"<<Yr<<endl;
}else cout<<"Ingrese un X1<100"<<endl;
};break;
case 4:cout<<"Multiplicacion - P\n";
{
cout<<"R1: ";cin>>Rp1;
cout<<"<1: ";cin>>PHIp1;
cout<<"R2: ";cin>>Rp2;
cout<<"<2: ";cin>>PHIp2;
if((Rp1>0)&&(Rp2>0))
{
Rp=Rp1*Rp2;
PHIp=PHIp1+PHIp2;
cout<<endl;
cout<<"Zp= "<<Rp<<"* <"<<PHIp<<endl;
}else cout<<"Radio tiene que ser mayor a 0"<<endl;
};break;
case 5:cout<<"Suma - P\n";
{
cout<<"R1: ";cin>>Rp1;
cout<<"<1: ";cin>>PHIp1;
cout<<"R2: ";cin>>Rp2;
cout<<"<2: ";cin>>PHIp2;
if((Rp1>0)&&(Rp2>0))
{
RADp1=(2*PI*PHIp1)/360;
RADp2=(2*PI*PHIp2)/360;
Xp1=Rp1*cos (RADp1);
Xp2=Rp2*cos (RADp2);
Yp1=Rp1*sin (RADp1);
Yp2=Rp2*sin (RADp2);
Xp=Xp1+Xp2;
Yp=Yp1+Yp1;
RP=sqrt((Xp,2)+(Yp,2));
RADP=atan (Yp/Xp);
PHIP=(RADP*360)/(2*PI);
cout<<endl;
cout<<"Zp= "<<RP<<"* <"<<PHIP<<endl;
}else cout<<"Radio tiene que ser mayor a 0"<<endl;
};break;
case 6:cout<<"Dividir - R\n";
{
cout<<"X1: ";cin>>Xr1;
cout<<"Y1: ";cin>>Yr1;
cout<<"X2: ";cin>>Xr2;
cout<<"Y2: ";cin>>Yr2;
if((Xr1!=0)&&(Xr2!=0))
{
RADr1=atan (Yr1/Xr1);
RADr2=atan (Yr2/Xr2);
Rr1=sqrt(pow(Xr1,2)+pow(Yr1,2));
Rr2=sqrt(pow(Xr2,2)+pow(Yr2,2));
PHIr1=(RADr1*360)/(2*PI);
PHIr2=(RADr2*360)/(2*PI);
Rr=Rr1/Rr2;
PHIr=PHIr1-PHIr2;
RADR=(2*PI*PHIr)/360;
XR=Rr*cos (RADR);
YR=Rr*sin (RADR);
cout<<endl;
cout<<"Zr= "<<XR<<" +j"<<YR<<endl;
}else cout<<"Ingrese un valor de X diferente a 0"<<endl;
};break;
default: cout<<"Opcion fuera de rango";
}//fin switch
return 0;
}






Comments