Un número complejo se expresa de la forma z = a + b * i, donde:
a es la parte real (un número real),
b es la parte imaginaria (también un número real), y
i es la unidad imaginaria, que cumple i^2 = -1.
El conjugado del número complejo z = a + b * i viene dado por:
zc = a - b * i
El valor absoluto (o módulo) de z se define como:
|z| = sqrt(a^2 + b^2)
El cuadrado del valor absoluto se calcula como el producto de z y su conjugado zc:
|z|^2 = z * zc = a^2 + b^2
La suma de dos números complejos z1 = a + b * i y z2 = c + d * i se calcula sumando sus partes real e imaginaria por separado:
z1 + z2 = (a + b * i) + (c + d * i)
= (a + c) + (b + d) * i
La diferencia de dos números complejos se obtiene restando sus partes respectivas:
z1 - z2 = (a + b * i) - (c + d * i)
= (a - c) + (b - d) * i
El producto de dos números complejos se define como:
z1 * z2 = (a + b * i) * (c + d * i)
= (a * c - b * d) + (b * c + a * d) * i
El recíproco de un número complejo distinto de cero viene dado por:
1 / z = 1 / (a + b * i)
= a / (a^2 + b^2) - b / (a^2 + b^2) * i
La división de un número complejo entre otro viene dada por:
z1 / z2 = z1 * (1 / z2)
= (a + b * i) / (c + d * i)
= (a * c + b * d) / (c^2 + d^2) + (b * c - a * d) / (c^2 + d^2) * i
Elevar e (la base del logaritmo neperiano) a un exponente complejo puede expresarse con la fórmula de Euler:
e^(a + b * i) = e^a * e^(b * i)
= e^a * (cos(b) + i * sin(b))
Dado que no debes usar el soporte integrado para números complejos, implementa las siguientes operaciones:
Regístrate en Exercism para aprender y dominar C++ con 19 conceptos100 ejercicios y mentoría humana real, todo gratis.