복소수 다루기

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 + 4i2 - 3i의 합이 5 + 1i임을 의미합니다.

심층 탐구

복소수는 음수의 제곱근을 처리할 수 없는 일반적인 숫자로는 해결할 수 없는 문제 때문에 역사 속에 등장했습니다. 17세기에 이르러서야 르네 데카르트와 제롤라모 카르다노 같은 수학자들 덕분에 복소수는 진지하게 다루어졌습니다.

Elixir에서는 복소수를 {3, 4} 같은 튜플로 자주 사용하거나, 바퀴를 다시 발명하지 않기 위해 전용 라이브러리를 사용합니다. 라이브러리는 보통 더 나은데, 허수 단위 ‘i’ 때문에 복잡해지는 곱셈과 나눗셈 같은 세세한 부분을 처리합니다(참고: i의 제곱은 -1입니다).

참고자료

다음 리소스를 확인하세요: