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
ผลลัพธ์ = ComplexMath.add(c1, c2)
IO.puts "ผลลัพธ์คือ: #{inspect(ผลลัพธ์)}"
สิ่งนี้จะมีผลลัพธ์:
ผลลัพธ์คือ: {5, 1}
นั่นหมายความว่าผลรวมของ 3 + 4i
และ 2 - 3i
คือ 5 + 1i
.
ทำความเข้าใจลึกซึ้ง
จำนวนเชิงซ้อนปรากฏขึ้นในประวัติศาสตร์เพราะจำนวนธรรมดาไม่สามารถจัดการกับรากที่สองของจำนวนลบได้ ไม่ได้ถูกใช้จริงจังจนกระทั่งศตวรรษที่ 17 ด้วยความช่วยเหลือของนักคณิตศาสตร์เช่น René Descartes และ Gerolamo Cardano
ใน Elixir, คุณมักจะใช้ tuples เช่น {3, 4}
สำหรับจำนวนเชิงซ้อน หรือใช้ไลบรารีที่เฉพาะเจาะจงเพื่อหลีกเลี่ยงการสร้างวงล้อใหม่ ไลบรารีมักจะดีกว่า - พวกเขาจัดการกับสิ่งเช่นการคูณและการหารที่ซับซ้อนเนื่องจากหน่วยจินตภาพ ‘i’ (สำหรับความรู้: i
ยกกำลังสอง เท่ากับ -1
)
ดูเพิ่มเติม
ตรวจสอบทรัพยากรเหล่านี้:
- ไลบรารี ComplexNum สำหรับผู้จัดการแพคเกจของ Elixir, Hex.
- โรงเรียน Elixir, สำหรับหัวข้อและแบบฝึกหัด Elixir ขั้นสูง
- Erlang – โมดูลคณิตศาสตร์, ซึ่ง Elixir ใช้ภายใต้ฝาครอบ, สำหรับความต้องการคณิตศาสตร์อื่น ๆ