Cuatro operaciones aritméticas con números complejos en lenguaje C
Diseñamos un programa demostrativo que puede realizar operaciones con números complejos. Se requiere implementar las siguientes seis operaciones básicas
: 1) Generar un número complejo a partir de las partes real e imaginaria de la entrada
; 2) Sumar dos números complejos;
; p>
3) Encuentra la diferencia entre dos números complejos
4) Encuentra el producto de dos números complejos,
5) Separa la parte real del número complejo conocido; ;
6) Separar la parte imaginaria del número complejo conocido.
Los resultados de la operación se muestran en forma de números complejos correspondientes o números reales (es mejor usar el método de estructura)
Si puedes usar cy stl, puedes escribir #include lt; complexgt; #include lt;iostreamgt;void main(){ usando el espacio de nombres std; complexlt;doublegt; , 0); resultado = a*b/(a b); cout lt; lt; resultado;}
Las siguientes son las operaciones específicas:
stdio.hgt; >
#includelt ;conio.hgt;
#includelt;stdlib.hgt;
#define ERR -1
#define MAX 100 /* Definir el tamaño de la pila*/
int stack[MAX] /*Definir la pila usando una matriz unidimensional*/
int top=0; indicador de pila*/
int push(int i) /*Operandos de almacenamiento, operación push*/
{
if(toplt;MAX)
{
stack[top]=i; /*La pila todavía tiene espacio y la parte superior de la pila indica que ha subido una posición*/
return 0;
}
else
{
printf("La pila está llena"
return ERR); ;
}
}
int pop() /*Eliminar el operando y extraer la pila*/
{
int var; /*Definir la parte superior de la pila que se devolverá Elemento*/
if(top!=NULL) /*Todavía hay elementos en la pila*/
{
var=stack[top--]; /*El indicador de pila baja una posición*/
return var /*Devuelve el elemento superior de la pila. */
}
else
printf("¡La pila está vacía!\n");
return ERR ; p>
}
void main()
{
int m, n
char l; >
int a, b, c;
int k;
do{
printf("\tSimulador de operación ariotmática\n"); *proporcione información inmediata*/
printf("\n\tPor favor ingrese el primer número:" /*Ingrese el primer operando*/
scanf("d",amp; m);
push(m); /*La primera operación Empuja el número a la pila*/
printf("\n\tPor favor, ingresa el segundo número:"); *Ingrese el segundo operando*/
scanf("d", amp ;n
>
push(n); /*El segundo operando se inserta en la pila*/
printf("\n\tChoose operator( /-/*//): "); p >
l=getche(); /*Operador de entrada*/
switch(l) /*Juzga el operador y ejecuta el código correspondiente*/
{
caso ' ':
b=pop();
a=pop()
c=a b
printf("\n\n\tEl resultado es d\n", c);
printf("\n"); >
caso '-':
b=pop();
a=pop()
c=a-b;
printf("\n\n\tEl resultado es d\n", c);
printf("\n");
caso '*':
b=pop();
a=pop()
c=a*b; >
printf("\n\n\tEl resultado es d\n", c);
printf("\n"); >
caso '/':
b=pop();
a=pop()
c=a/b; p>
p>
printf("\n\n\tEl resultado es d\n",c
printf("\n"); >break;
p>
}
printf("\tContinue?(s/n):"); /*Preguntar al usuario si desea finalizar el programa*/
l=getche();
if(l=='n')
salir(0); (1);
}