עבודה עם מספרים מרוכבים

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 + 4i ו-2 - 3i הוא 5 + 1i.

נטילה לעומק

מספרים מרוכבים צצו בהיסטוריה מכיוון שמספרים רגילים לא הסתדרו עם שורשים ריבועיים של מספרים שליליים. רק במאה ה-17 הם זכו להיחשבות ברצינות, הודות למתמטיקאים כמו רנה דקארט וג’רולאמו קרדאנו.

ב-Elixir, לעיתים קרובות משתמשים בטאפלים כמו {3, 4} עבור מספרים מרוכבים, או בספרייה מוקדשת כדי לא לחזור על גלגל. ספריות הן בדרך כלל טובות יותר - הן מטפלות בדברים הקטנים כמו כפל וחילוק, שהופכים מסובכים בגלל היחידה המדומה ‘i’ (לידיעתכם: i בריבוע שווה ל--1).

ראה גם

בדוק את המשאבים הבאים: