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

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

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

В Elm нет встроенной поддержки комплексных чисел, поэтому вы создадите собственный тип и функции. Вот быстрая настройка:

type alias Complex =
    { real : Float, imaginary : Float }

add : Complex -> Complex -> Complex
add a b =
    { real = a.real + b.real, imaginary = a.imaginary + b.imaginary }

-- Пример использования:
a = { real = 3, imaginary = 2 }
b = { real = 1, imaginary = -4 }

sum = add a b
-- sum это { real = 4.0, imaginary = -2.0 }

Глубокое погружение

Исторически комплексные числа не всегда принимались. Они стали изменить игру в 16-м веке для решения кубических уравнений. Альтернативы в других языках, например в Python, предлагают встроенную поддержку комплексных чисел с операциями прямо из коробки. В Elm требуется подход своими руками, как вы уже видели. Но вы можете сделать его настолько сложным, насколько это необходимо, создавая умножение, деление и другие операции, настраивая производительность.

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

  • Официальная документация Elm: https://package.elm-lang.org/ для создания пользовательских типов и освоения основ Elm.
  • Любителям истории математики могут проверить “An Imaginary Tale” от Paul J. Nahin для путешествия комплексных чисел сквозь время.
  • Погрузитесь в математически ориентированные программные задачи на Project Euler (https://projecteuler.net) чтобы применить вашу магию комплексных чисел.