Треки
/
Clojure
Clojure
/
Вправи
/
Комплексні числа
Комплексні числа

Комплексні числа

Легка

Вказівки

Комплексне число записують у вигляді z = a + b * i, де:

  • a називають дійсною частиною (дійсним числом),

  • b називають уявною частиною (теж дійсним числом), а

  • i називають уявною одиницею, для якої виконується i^2 = -1.

Операції над комплексними числами

Спряження

Спряжене до комплексного числа z = a + b * i обчислюють так:

zc = a - b * i

Абсолютна величина

Абсолютну величину (або модуль) числа z означують так:

|z| = sqrt(a^2 + b^2)

Квадрат абсолютної величини обчислюють як добуток z і спряженого до нього zc:

|z|^2 = z * zc = a^2 + b^2

Додавання

Суму двох комплексних чисел z1 = a + b * i і z2 = c + d * i обчислюють, додаючи їхні дійсні та уявні частини окремо:

z1 + z2 = (a + b * i) + (c + d * i)
        = (a + c) + (b + d) * i

Віднімання

Різницю двох комплексних чисел отримують, віднімаючи їхні відповідні частини:

z1 - z2 = (a + b * i) - (c + d * i)
        = (a - c) + (b - d) * i

Множення

Добуток двох комплексних чисел означують так:

z1 * z2 = (a + b * i) * (c + d * i)
        = (a * c - b * d) + (b * c + a * d) * i

Обернене число

Обернене до ненульового комплексного числа задають так:

1 / z = 1 / (a + b * i)
      = a / (a^2 + b^2) - b / (a^2 + b^2) * i

Ділення

Ділення одного комплексного числа на інше задають так:

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

Піднесення до степеня

Піднесення e (основи натурального логарифма) до комплексного показника можна виразити за допомогою формули Ейлера:

e^(a + b * i) = e^a * e^(b * i)
              = e^a * (cos(b) + i * sin(b))

Вимоги до реалізації

Оскільки вбудованою підтримкою комплексних чисел користуватися не можна, реалізуймо такі операції:

  • додавання двох комплексних чисел
  • віднімання двох комплексних чисел
  • множення двох комплексних чисел
  • ділення двох комплексних чисел
  • спряження комплексного числа
  • абсолютна величина комплексного числа
  • піднесення e (основи натурального логарифма) до комплексного степеня

Додаток

Note

Наведені вище інструкції синхронізовано зі спільним репозиторієм, щоб забезпечити узгодженість між усіма мовними треками. Цей додаток дає додаткові розʼяснення або змінює інструкції за потреби, щоб краще узгодити їх із цілями треку Clojure.

У цій вправі на треку Clojure не потрібно реалізовувати операцію піднесення до степеня.


Джерело

WikipediaПосилання відкривається в новому вікні або вкладці
Редагувати через GitHub Посилання відкривається в новому вікні або вкладці
Clojure Exercism

Час розпочати Комплексні числа?

Зареєструйтеся на Exercism, щоб вивчати й опановувати Clojure, а також 12 концепцій105 вправ та справжнє наставництво від людей, і все це безкоштовно.