Làm việc với số phức

Elixir:
Làm việc với số phức

Làm thế nào:

Elixir không có số phức tích hợp, vì vậy chúng ta tự viết hoặc sử dụng một thư viện, như ComplexNum. Dưới đây là một ví dụ nhanh với một thư viện:

# Giả sử bạn đã cài đặt ComplexNum
defmodule ComplexMath do
  import ComplexNum

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

# Tạo số phức và cộng chúng
c1 = {3, 4}   # đại diện cho 3 + 4i
c2 = {2, -3}  # đại diện cho 2 - 3i
kết_quả = ComplexMath.add(c1, c2)
IO.puts "Kết quả là: #{inspect(kết_quả)}"

Điều này sẽ xuất ra:

Kết quả là: {5, 1}

Có nghĩa là tổng của 3 + 4i2 - 3i5 + 1i.

Sâu hơn

Số phức xuất hiện trong lịch sử bởi vì những con số bình thường không thể xử lý căn bậc hai của số âm. Không cho đến thế kỷ 17, chúng mới được coi trọng, nhờ các nhà toán học như René Descartes và Gerolamo Cardano.

Trong Elixir, bạn thường sử dụng kiểu dữ liệu tuple như {3, 4} cho số phức, hoặc sử dụng một thư viện chuyên dụng để tránh “phải l reinvent the wheel. Thư viện thường tốt hơn - chúng xử lý những việc phức tạp như nhân và chia, điều này trở nên khó khăn vì đơn vị ảo ‘i’ (FYI: i bình phương bằng -1).

Xem thêm

Kiểm tra các nguồn tài nguyên này: