//////////////////////////////////////////
// Quocient de nombres complexos
// Joan Aranès Clua
// 18/03/2002
//////////////////////////////////////////
/*
3. Divisió de nombres complexos
El quocient és possible sempre que la part real i la part imaginària del
divisor no siguin simultàniament 0. Aquesta circumstància s'ha de comprovar.
Si tenim dos nombres complexos z1=a+bi
i z2=c+di, es defineix la divisió:
$\frac{z_1}{z_2}=\frac{ac+bd}{c^2+d^2}+\i\frac{bc-ad}{c^2+d^2}$
*/
#include <stdio.h>
struct complex {
float re;
float im;
};
void impr(complex );
void suma(complex , complex , complex* );
void producte(complex, complex, complex*);
void divisio(complex, complex, complex*);
void main(){
complex z1,z2,zr;
printf("Introdu\x08Bu els operadors. Per introduir un nombre complex\n");
printf("amb part imagin\x085ria negativa poseu a+-bi...\n");
printf("introdu\x08Bu z1 (format x+yi):...");
scanf("%f+%fi",&z1.re, &z1.im);
printf("introdu\x08Bu z2 (format x+yi):...");
scanf("%f+%fi",&z2.re, &z2.im);
suma(z1,z2,&zr);
impr(z1);printf("+ ");impr(z2);printf("= ");
impr(zr);printf("\n");
producte(z1,z2,&zr);
impr(z1);printf("* ");impr(z2);printf("= ");
impr(zr);printf("\n");
divisio(z1,z2,&zr);
impr(z1);printf("/ ");impr(z2);printf("= ");
impr(zr);printf("\n");
}
void impr(complex a){
printf("%f+%fi ", a.re, a.im);
}
void suma(complex a, complex b, complex* c){
c->re=a.re+b.re;
c->im=a.im+b.im;
}
void producte(complex a, complex b, complex* c){
c->re=a.re*b.re-a.im*b.im;
c->im=a.im*b.re+a.re*b.im;
}
void divisio(complex a, complex b, complex* c){
c->re=(a.re*b.re+a.im*b.im)/(b.re*b.re+b.im*b.im);
c->im=(a.im*b.re-a.re*b.im)/(b.re*b.re+b.im*b.im);
}
Un blog con cuestiones, ejercicios, problemas, aplicaciones y comentarios relacionados con los contenidos de Matemáticas del primer curso de Bachillerato en las modalidades de Ciencias y Tecnología
martes, 1 de octubre de 2002
Cociente de dos números complejos. Un ejercicio de programación en C/C++
Etiquetas:
C,
C/C++,
cociente de dos números complejos,
números complejos
Suscribirse a:
Enviar comentarios (Atom)
No hay comentarios:
Publicar un comentario
Gracias por tus comentarios