Квадратный корень из двух комплексных чисел

Опубликовано: 22 Сентября, 2022

Даны два положительных целых числа A и B , представляющие комплексное число Z в виде Z = A + i * B , задача состоит в том, чтобы найти квадратный корень из данного комплексного числа.

Примеры:

Input: A = 0, B =1
Output:
The Square roots are: 
0.707107 + 0.707107*i
-0.707107 – 0.707107*i

Input: A = 4, B = 0
Output:
The Square roots are: 
2
-2

Подход: Данная проблема может быть решена на основе следующих наблюдений:

  • Известно, что квадратный корень из комплексного числа также является комплексным числом.
  • Тогда, учитывая квадратный корень из комплексного числа, равный X + i*Y , значение (A + i*B) можно выразить как:
    • А + я * В = (Х + я * Y) * (Х + я * Y)
    • А + я * В = Х 2 - У 2 + 2 * я * Х * У
  • Приравнивая значения вещественных и сложных частей по отдельности:

Из приведенных выше наблюдений вычислите значение X и Y , используя приведенную выше формулу, и напечатайте значение (X + i * Y) как результирующее значение квадратного корня из данного комплексного числа.

Ниже приведена реализация вышеуказанного подхода:

Временная сложность: O(1)
Вспомогательное пространство: O(1)