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

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” Пола Дж. Нахіна для подорожі комплексних чисел крізь час.
  • Зануритись у математично орієнтовані програмувальні виклики на Project Euler (https://projecteuler.net), щоб застосувати ваші знання комплексних чисел.