Работа с комплексными числами

Elixir:
Работа с комплексными числами

Как это сделать:

В Elixir нет встроенной поддержки комплексных чисел, поэтому мы создаём свои собственные решения или используем библиотеку, например, ComplexNum. Вот быстрый пример с использованием библиотеки:

# Предполагая, что у вас установлен ComplexNum
defmodule ComplexMath do
  import ComplexNum

  def add(a, b) do
    ComplexNum.add(a, b)
  end
end

# Создаем комплексные числа и складываем их
c1 = {3, 4}   # представляет 3 + 4i
c2 = {2, -3}  # представляет 2 - 3i
result = ComplexMath.add(c1, c2)
IO.puts "Результат: #{inspect(result)}"

Это выведет:

Результат: {5, 1}

Это означает, что сумма 3 + 4i и 2 - 3i равна 5 + 1i.

Погружение в тему

Комплексные числа появились в истории из-за того, что обычные числа не могли обрабатывать квадратные корни из отрицательных чисел. И только в 17-м веке к ним стали относиться серьезно благодаря таким математикам, как Рене Декарт и Джероламо Кардано.

В Elixir для комплексных чисел часто используются кортежи вида {3, 4} или посвящённая этому библиотека, чтобы не изобретать велосипед. Библиотеки обычно лучше — они обрабатывают сложные моменты, такие как умножение и деление, которые усложняются из-за мнимой единицы ‘i’ (кстати: i в квадрате равно -1).

Смотрите также

Проверьте эти ресурсы: