Complejos: de binómica a polar y viceversa

Andrés Bernal

#include<stdio.h>
#include<math.h>
#include<stdlib.h>
#define pi 3.14159265

using namespace std;

int main()
{
float mod,arg,a,b,t;
int ang;
int p;

do{
printf("SI QUIERES PASAR UN NUMERO COMPLEJO DE FORMA BINOMICA 
   A FORMA POLAR PULSE 1, SI ES AL REVES TECLEA EL 0.\n");
scanf ("%d", &p);
}while((p!=1)&&(p!=0));
printf("\n");

if(p==1)
{
int ang2;
printf("Introduce la parte real e imaginaria del complejo.\n");
printf("Parte real a: "); scanf("%f",&a);
printf("Parte imaginaria b: "); scanf("%f",&b);
printf("\n");
printf("El complejo en forma binomica es: Z=%.2f+i*%.2f\n",a,b);
mod=sqrt(a*a+b*b);
arg=atan(b/a);
t=arg*(180/pi); /*Pasamos de radianes a grados*/
ang=nearbyint(t); /*Redondeamos el argumento al entero mas cercano*/

if((a>=0)&&(b>=0))
{ang2=ang;}
if((a<=0)&&(b>=0))
{ang2=180-ang;}
if((a<=0)&&(b<=0))
{ang2=180+ang;}
if((a>=0)&&(b<=0))
{ang2=360-ang;}
printf("\n");
printf("Que en forma polar quedara...\n");
printf("\n\n");
system("PAUSE");
printf("\n");
printf(" Z=%.2f*(i*cos%d+sen%d)",mod,ang2,ang2);
printf("\n");
}

else if(p==0)
{
printf("Introduzca el argumento (en grados) y el modulo del complejo\n");
printf("Argumento: "); scanf("%f",&arg);
printf("Modulo: "); scanf("%f",&mod);
printf("\n");

int ang_red=nearbyint(arg); /*Redondeamos el argumento al entero mas cercano*/
float ang_rad=(arg*pi)/180; /*Pasamos los grados a radianes para que las funciones       
                               sin y cos operen correctamente*/

a=cos(ang_rad)*mod;
b=sin(ang_rad)*mod;

printf("El complejo en forma polar es Z=%.2f*(i*cos%d+sen%d)\n",mod,ang_red,ang_red);
printf("\n");
printf("Que en forma binomica quedara...");
printf("\n\n");
system("PAUSE");
printf("\n");
printf(" Z=%.2f+i*%.2f\n",a,b);
}

return 0;
}
Esta entrada fue publicada en Informática e Internet. Guarda el enlace permanente.

Una respuesta a Complejos: de binómica a polar y viceversa

  1. Observa alguna pequeña corrección en el ángulo ‘ang2’ cuando p==1.

Deja un comentario

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s