top of page
CLASE 5: SWITCH Y CONDICIONES CON NUMEROS COMPLEJOS (POLARES Y RECTANGULARES)
1. CODIGO EN DEVC++
#include <iostream>
#include <math.h>
using namespace std;
int main()
{
int opcion;
cout<<"***************************** \n";
cout<<"Menu de complejos \n";
cout<<"1)Conversion de Polar a Rectangular\n";
cout<<"2)Conversion de Rectangular a Polar\n";
cout<<"3)Suma - Rectangular \n";
cout<<"4)Suma - Polar \n";
cout<<"5)Multiplicacion - Polar \n";
cout<<"6)Division - Rectangular \n";
cout<<endl;
cout<<"ESCRIBA UNA OPCION:"<<endl;
cout<<"---------------------"<<endl;
cout<<endl;
cin>>opcion;
cout<<endl;
switch (opcion)
{
case 1:
{
cout<<"CONVERSION DE POLAR A RECTANGULAR\n" ;
cout<<"***********************************"<<endl;
//DECLARACION
int R1, R2, PHI1, PHI2;
double RAD1,PI, RAD2, X1, X2, Y1, Y2;
//ASIGNACION
//DATOS POLARES
cout<<"INGRESE DATOS POLARES:"<<endl;
cout<<"**************************"<<endl;
cout<<"Ingrese el Radio 1: "; cin>>R1;
cout<<"Ingrese el Radio 2: "; cin>>R2;
cout<<"Ingrese el Valor del Angulo Phi1: "; cin>>PHI1;
cout<<"Ingrese el Valor del Angulo Phi2: "; cin>>PHI2;
cout<<endl;
PI = 3.141592;
if (R1 > 10)
{
//CONVERSION DE POLAR A RECTANGULAR
//PROCESO
RAD1 = (2 * PI * PHI1) / 360;
cout<<"El Valor de RAD1 es: "<< RAD1<<endl;
RAD2 = (2 * PI * PHI2) / 360;
cout<<"El Valor de RAD2 es: "<< RAD2<<endl;
cout<<endl;
cout<<"CONVERSION A RECTANGULARES:"<<endl;
cout<<"**************************"<<endl;
X1 = R1*cos(RAD1);
X2 = R2*cos(RAD2);
Y1 = R1*sin(RAD1);
Y2 = R2*sin(RAD2);
//RESULTADOS
cout<<"El Valor de X1 es: "<< X1<<endl;
cout<<"El Valor de X2 es: "<< X2<<endl;
cout<<"El Valor de Y1 es: "<< Y1<<endl;
cout<<"El Valor de Y2 es: "<< Y2<<endl;
cout<<endl;
}
else
{cout<<"El Radio 1 debe ser mayor a 10"<<endl;
};break;
case 2:
{
cout<<"CONVERSION DE RECTANGULAR A POLAR\n" ;
cout<<"************************************"<<endl;
//DECLARACION
int x1,y1,x2,y2;
double phi1,phi2, pi,r1,r2;
//ASIGNACION
//DATOS RECTANGULARES
cout<<"INGRESE DATOS RECTANGULARES:"<<endl;
cout<<"**************************"<<endl;
cout<<"Ingrese X1:"; cin>>x1;
cout<<"Ingrese X2:" ; cin>>x2;
cout<<"Ingrese Y1:" ; cin>>y1;
cout<<"Ingrese Y2:" ; cin>>y2;
cout<<endl;
if (x1<50)
{
//CONVERSION A POLAR
//PROCESO
cout<<"CONVERSION A POLAR:"<<endl;
cout<<"**************************"<<endl;
r1 = sqrt(pow(x1,2) + pow(y1,2));
r2 = sqrt(pow (x2, 2) + pow (y2, 2));
phi1 = atan(y1 / x1);
phi2 = atan(y2 / x2);
//RESULTADOS
cout<<"El Valor de R1 es: "<< r1<<endl;
cout<<"El Valor de R2 es: "<< r2<<endl;
cout<<"El Valor del angulo PHI1 es: "<< phi1<<endl;
cout<<"El Valor del angulo PHI2 es: "<< phi2<<endl;
cout<<endl;
}
else
{cout<<"X1 debe ser menor a 50"<<endl;
};break;
case 3:
{
cout<<"(SUMA -RECTANGULAR)\n" ;
cout<<"**************************"<<endl;
//DECLARACION
int x1,x2,y1,y2;
double z1,z2,r1,r2;
//ASIGNACION
//DATOS RECTANGULARES
cout<<"INGRESE DATOS RECTANGULARES:"<<endl;
cout<<"**************************"<<endl;
cout<<"Ingrese X1:"; cin>>x1;
cout<<"Ingrese X2:" ; cin>>x2;
cout<<"Ingrese Y1:" ; cin>>y1;
cout<<"Ingrese Y2:" ; cin>>y2;
cout<<endl;
if(y1<80)
{
//PROCESO Y RESULTADOS
cout<<"SUMA DE RECTANGULARES"<<endl;
cout<<"**************************"<<endl;
cout<<"Z1 = "<<(x1)<<" + j* "<<(y1)<<endl;
cout<<"Z2 = "<<(x2)<<" + j*"<<(y2)<<endl;
cout<<"Z = "<<(x1+x2)<<" + j*"<<(y1+y2)<<endl;
cout<<endl;
}
else
{cout<<"Y1 debe ser menor a 80"<<endl;
};break;
case 4:
{
cout<<"(SUMA -POLAR)\n" ;
cout<<"**************************"<<endl;
//DECLARACION
int x1,y1,x2,y2,r1,r2;
double phi1,phi2,RAD1,RAD2,z1,z2;
//ASIGNACION
//DATOS POLARES
cout<<"INGRESE DATOS POLARES:"<<endl;
cout<<"**************************"<<endl;
cout<<"Ingrese el Radio 1:"; cin>>r1;
cout<<"Ingrese el Radio 2:"; cin>>r2;
cout<<"Ingrese el Angulo PHI 1:"; cin>>phi1;
cout<<"Ingrese el Angulo PHI 2:"; cin>>phi2;
cout<<endl;
pi=3.141592;
RAD1 = (2 * pi * phi1) / 360;
cout<<"El Valor de RAD1 es: "<< RAD1<<endl;
RAD2 = (2 * pi * phi2) / 360;
cout<<"El Valor de RAD2 es: "<< RAD2<<endl;
cout<<endl;
if (r2<100)
{
//CONVERSION DE POLAR A RECTANGULAR
cout<<"CONVERSION A RECTANGULAR:"<<endl;
cout<<"**************************"<<endl;
x1 = r1*cos(RAD1);
cout<<"El Valor de X1 es: "<< x1<<endl;
y1 = r1*sin(RAD1);
cout<<"El Valor de Y1 es: "<< y1<<endl;
x2 = r2*cos(RAD2);
cout<<"El Valor de X2 es: "<< x2<<endl;
y2 = r2*sin(RAD2);
cout<<"El Valor de Y2 es: "<< y2<<endl;
cout<<endl;
}
else
{cout<<"El radio 2 debe ser menor a 100"<<endl;
};
{
//PROCESO Y RESULTADOS
//SUMA EN RECTANGULARES
cout<<"SUMA DE RECTANGULARES"<<endl;
cout<<"**************************"<<endl;
cout<<"Z1 = "<<(x1)<<" + j* "<<(y1)<<endl;
cout<<"Z2 = "<<(x2)<<" + j*"<<(y2)<<endl;
cout<<"Z = "<<(x1+x2)<<" + j*"<<(y1+y2)<<endl;
cout<<endl;
};break;
case 5:
{
cout<<"(MULTIPLICACION -POLAR)\n" ;
//DECLARACION
int x1,y1,x2,y2;
double r1,r2,phi1,phi2;
//ASIGNACION
//DATOS RECTANGULARES
cout<<"INGRESE DATOS RECTANGULARES:"<<endl;
cout<<"**************************"<<endl;
cout<<"Ingrese X1:"; cin>>x1;
cout<<"Ingrese X2:" ; cin>>x2;
cout<<"Ingrese Y1:" ; cin>>y1;
cout<<"Ingrese Y2:" ; cin>>y2;
cout<<endl;
if (y2>5)
{
//PROCESO
//CONVERSION DE RECTANGULAR A POLAR
cout<<"CONVERSION A POLAR:"<<endl;
cout<<"**************************"<<endl;
r1=sqrt(pow(x1,2)+pow(y1 ,2));
r2=sqrt(pow(x2,2)+pow(y2,2));
phi1=atan(y1/x1);
phi2=atan(y2/x2);
cout<<"El Valor de R1 es: "<< r1<<endl;
cout<<"El Valor de R2 es: "<< r2<<endl;
cout<<"El Valor del angulo PHI1 es: "<< phi1<<endl;
cout<<"El Valor del angulo PHI2 es: "<< phi2<<endl;
cout<<endl;
//MULTIPLICACION POLAR
//RESULTADO
cout<<"MULTIPLICACION"<<endl;
cout<<"*****************"<<endl;
cout<<"El radio es: "<<(r1 * r2)<<"y el Angulo es: "<<(phi1 + phi2)<<endl;
cout<<endl;
} else
cout<< "Y2 debe ser mayor a 5";
};break;
case 6:
{
//DECLARACION
cout<<"(DIVISION -RECTANGULAR)\n" ;
int x1,y1,x2,y2;
double r1,r2,phi1,phi2,x,y;
//ASIGNACION
//DATOS RECTANGULARES
cout<<"INGRESE DATOS RECTANGULARES:"<<endl;
cout<<"**************************"<<endl;
cout<<"Ingrese X1:"; cin>>x1;
cout<<"Ingrese X2:" ; cin>>x2;
cout<<"Ingrese Y1:" ; cin>>y1;
cout<<"Ingrese Y2:" ; cin>>y2;
cout<<endl;
if (y1<200)
{
//CONVERSION DE RECTANGULAR A POLAR
//PROCESO
cout<<"CONVERSION A POLAR:"<<endl;
cout<<"**************************"<<endl;
r1=sqrt(pow(x1,2)+pow(y1,2));
r2=sqrt(pow(x2,2)+pow(y2,2));
phi1=atan(y1/x1);
phi2=atan(y2/x2);
cout<<"El Valor de R1 es: "<< r1<<endl;
cout<<"El Valor de R2 es: "<< r2<<endl;
cout<<"El Valor del angulo PHI1 es: "<< phi1<<endl;
cout<<"El Valor del angulo PHI2 es: "<< phi2<<endl;
cout<<endl;
//DIVISION POLAR
//RESULTADO
cout<<"DIVISION:"<<endl;
cout<<"************"<<endl;
cout<<"El radio es:"<<(r1/r2)<<"El angulo es:"<<(phi1-phi2)<<endl;
x=(r1/r2)*cos(phi1-phi2);
y=(r1/r2)*sin(phi1-phi2);
cout<<endl;
//CONVERSION A RECTANGULAR
//RESULTADO
cout<<"CONVERSION A RECTANGULAR"<<endl;
cout<<"**********************"<<endl;
cout<<"z= "<<x<<"+j"<<y<<endl;
}
else
{
cout<<"Y1 debe ser menor a 200 ";
};break;
}
{
cout<<"NO HA SELECCIONADO UNA OPCION"<<endl;
}//fin switch
system("pause");
return 0;
}
}
}
}
}
}//fin programa
2. EJECUCION
2.1. Menu de Opciones
2.2. OPCION 1: Conversion de Polar a Rectangular
2.3. OPCION 2: Conversion de Rectangular a Polar
2.4. OPCION 3: Suma de Rectangulares
2.5. OPCION 4: Suma de Polares
2.6. OPCION 5: Multiplicacion de Polares
2.7. OPCION 6: Division de Rectangulares
bottom of page