Código (c) [Seleccionar]
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
struct complejo suma (struct complejo x, struct complejo y);
struct complejo division(struct complejo x, struct complejo y);
struct complejo resta(struct complejo x, struct complejo y);
struct complejo multiplicacion(struct complejo x, complejo y);
int main(void)
{
int opcion;
printf("OPERACIONES CON NUMEROS COMPLEJOS:\n");
printf("1) Suma de números complejos\n");
printf("2) Divison de números complejos\n");
printf("3) Resta de números complejos\n");
printf("4) Multiplición de números complejos\n");
printf("Ingrese una opción:\n");
scanf("%d",&opcion);
switch(opcion)
{
case 1:
printf("1) Suma de números complejos:\n\n");
struct complejo suma1,suma2,csuma;
printf("Ingrese la parte real del primer numero complejo:");
scanf("%f",&suma1.a);
printf("Ingrese la parte imaginaria del primer numero complejo:");
scanf("%f",&suma1.b);
printf("Ingrese la parte real del segundo numero complejo:");
scanf("%f",&suma2.a);
printf("Ingrese la parte imaginaria del segundo numero complejo:");
scanf("%f",&suma2.b);
csuma = suma (suma1,suma2);
printf("El resultado es= %f+j%f\n\n",csuma.a,csuma.b);
system("PAUSE");
return EXIT_SUCCESS;
break;
case 2:
printf("2) Division de dos números complejos:\n\n");
struct complejo {
float division1, division2, cdivision;
};
printf ("Ingrese el modulo del primer numero complejo:");
scanf ("%f",&division1.a);
printf ("Ingrese la fase del primer numero complejo:");
scanf ("%f",&division1.b);
printf ("\nIngrese el modulo del segundo numero complejo:");
scanf ("%f",&division2.a);
printf ("Ingrese la fase del segundo numero complejo:");
scanf ("%f",&division2.b);
cdivision = division (division1, division2);
printf ("\nEl resultado de la division es= Modulo= %f Fase=%f\n\n", division.a,division.b);
system("PAUSE");
return EXIT_SUCCESS;
break;
case 3:
printf("3) Resta de números complejos\n\n");
struct complejo {
float resta1, resta2, cresta;
};
printf("Ingrese la parte real del primer numero complejo:");
scanf("%f",&resta1.a);
printf("Ingrese la parte imaginaria del primer numero complejo:");
scanf("%f",&resta1.b);
printf("Ingrese la parte real del segundo numero complejo:");
scanf("%f",&resta2.a);
printf("Ingrese la parte imaginaria del segundo numero complejo:");
scanf("%f",&resta2.b);
cresta = resta (resta1,resta2);
printf("El resultado es= %f-j%f\n\n",csuma.a,csuma.b);
system("PAUSE");
return EXIT_SUCCESS;
break;
case 4:
printf("\n4) Multiplicación de dos números complejos: \n\n");
struct complejo{
float producto1,product2, producto;
}
printf("Ingrese el modulo del primer numero complejo:");
scanf("%f",&producto1.a);
printf("Ingrese la fase del primer numero complejo:");
scanf("%f",&producto1.b);
printf("\nIngrese el modulo del segundo numero complejo:");
scanf("%f",&producto2.a);
printf("Ingrese la fase del segundo numero complejo:");
scanf("%f",&producto2.b);
producto = multiplicacion (producto1, producto2);
printf("\nEl resultado del producto es= Modulo= %f Fase=%f\n\n", producto.a,producto.b);
system("PAUSE");
return EXIT_SUCCESS;
break;
default: printf("La opción que ingresaste no es correcta\n");
}
}
struct complejo suma (struct complejo x, struct complejo y)
{
struct complejo i;
i.a=x.a+y.a;
i.b=x.b+y.b;
return i;
}
struct complejo division(struct complejo x, struct complejo y)
{
struct complejo i;
i.a=x.a/y.a;
i.b=x.b-y.b;
return i;
}
struct complejo resta(struct complejo x, struct complejo y)
{
struct complejo i;
i.a=x.a-y.a;
i.b=x.b-y.b;
return i;
}
struct complejo multiplicacion(struct complejo x, struct complejo y)
{
struct complejo i;
i.a=x.a * y.a;
i.b=x.b+y.b;
return i;
}