Комплексне число - це число виду a + b * i, де a і b - дійсні числа, а i задовольняє рівність i^2 = -1.
a називають дійсною частиною, а b - уявною частиною числа z.
Спряженим до числа a + b * i є число a - b * i.
Модуль комплексного числа z = a + b * i - це дійсне число |z| = sqrt(a^2 + b^2). Квадрат модуля |z|^2 дорівнює добутку z на спряжене до нього число.
Щоб знайти суму або різницю двох комплексних чисел, треба окремо додати або відняти їхні дійсні й уявні частини:
(a + i * b) + (c + i * d) = (a + c) + (b + d) * i,
(a + i * b) - (c + i * d) = (a - c) + (b - d) * i.
Результат множення за означенням дорівнює
(a + i * b) * (c + i * d) = (a * c - b * d) + (b * c + a * d) * i.
Число, обернене до ненульового комплексного числа, дорівнює
1 / (a + i * b) = a/(a^2 + b^2) - b/(a^2 + b^2) * i.
Ділення комплексного числа a + i * b на інше число c + i * d дає:
(a + i * b) / (c + i * d) = (a * c + b * d)/(c^2 + d^2) + (b * c - a * d)/(c^2 + d^2) * i.
Піднесення e до комплексного показника можна записати як e^(a + i * b) = e^a * e^(i * b), останній доданок якого дає формула Ейлера e^(i * b) = cos(b) + i * sin(b).
Реалізуйте такі операції:
Припустімо, що мова програмування, яку ми використовуємо, не має реалізації комплексних чисел.