Calculo numeros complexos linguagem c
#include
#include
#include
#define pi 3.14159265359
struct numcomplexo
{
float real; float imag; float modulo; float angulo;
}num1,num2,num3;
struct numcomplexo entrada_polar() { float m=0,a=0,ar=0; struct numcomplexo forma_polar; puts ("\nEntre com o modulo:"); scanf("%f",&m); puts ("\nEntre com o angulo:"); scanf("%f",&a); ar=a*pi/180.0; // angulo em radianos necessário p o calculo forma_polar.modulo=m; forma_polar.angulo=a; forma_polar.real=m*cos(ar); forma_polar.imag=m*sin(ar); return forma_polar; } struct numcomplexo entrada_retangular() { float r=0,i=0,ar=0; struct numcomplexo forma_retangular; puts ("\nEntre com a parte real:"); scanf("%f",&r); puts ("\nEntre com a parte imaginaria:"); scanf("%f",&i); ar=i/r; // angulo em radianos necessário p o calculo forma_retangular.real=r; forma_retangular.imag=i; forma_retangular.modulo=sqrt((r*r)+(i*i)); forma_retangular.angulo=atanf(ar)*180/pi; return forma_retangular; } struct numcomplexo operacao() { int calculo=0; float ar,zsomareal,zsomaimag,zsubreal,zsubimag,zmultmod,zmultang,zdivmod,zdivang; struct numcomplexo resultado; puts ("\n\n-----------------------------------------------------------\n"); printf("\n Digite o numero correspondente a sua opcao de calculo:\n\n"); puts(" Digite (3) para SOMA:"); puts(" Digite (4) para SUBTRACAO:"); puts(" Digite (5) para MULTIPLICACAO:"); puts(" Digite (6) para DIVISAO:\n"); scanf ("\n%d", &calculo); if (calculo == 3) { zsomareal=num1.real+num2.real; zsomaimag=num1.imag+num2.imag; ar=zsomaimag/zsomareal; // angulo em radianos necessário p o calculo resultado.real=zsomareal; resultado.imag=zsomaimag;