المسارات
/
Raku
Raku
/
التمارين
/
الأعداد المركبة
الأعداد المركبة

الأعداد المركبة

سهل

التعليمات

يُعبَّر عن العدد المركب بالصيغة z = a + b * i، حيث:

  • a هو الجزء الحقيقي (عدد حقيقي)،

  • b هو الجزء التخيلي (وهو أيضًا عدد حقيقي)، و

  • i هي الوحدة التخيلية التي تحقق i^2 = -1.

العمليات على الأعداد المركبة

المرافق

يُعطى مرافق العدد المركب z = a + b * i بالعلاقة:

zc = a - b * i

القيمة المطلقة

تُعرَّف القيمة المطلقة (أو المقياس) للعدد z بأنها:

|z| = sqrt(a^2 + b^2)

ويُحسب مربع القيمة المطلقة على أنه حاصل ضرب z في مرافقه zc:

|z|^2 = z * zc = a^2 + b^2

الجمع

يُحسب مجموع العددين المركبين z1 = a + b * i وz2 = c + d * i بجمع جزأيهما الحقيقي والتخيلي كلًّا على حدة:

z1 + z2 = (a + b * i) + (c + d * i)
        = (a + c) + (b + d) * i

الطرح

يُحصل على الفرق بين عددين مركبين بطرح الجزأين المتناظرين من كل منهما:

z1 - z2 = (a + b * i) - (c + d * i)
        = (a - c) + (b - d) * i

الضرب

يُعرَّف حاصل ضرب عددين مركبين بأنه:

z1 * z2 = (a + b * i) * (c + d * i)
        = (a * c - b * d) + (b * c + a * d) * i

المقلوب

يُعطى مقلوب عدد مركب لا يساوي صفرًا بالعلاقة:

1 / z = 1 / (a + b * i)
      = a / (a^2 + b^2) - b / (a^2 + b^2) * i

القسمة

تُعطى قسمة عدد مركب على آخر بالعلاقة:

z1 / z2 = z1 * (1 / z2)
        = (a + b * i) / (c + d * i)
        = (a * c + b * d) / (c^2 + d^2) + (b * c - a * d) / (c^2 + d^2) * i

الرفع إلى قوة

يمكن التعبير عن رفع e (أساس اللوغاريتم الطبيعي) إلى أس مركب باستخدام صيغة أويلر:

e^(a + b * i) = e^a * e^(b * i)
              = e^a * (cos(b) + i * sin(b))

متطلبات التنفيذ

بما أنه لا ينبغي لك استخدام الدعم المدمج للأعداد المركبة، فنفّذ العمليات التالية:

  • الجمع لعددين مركبين
  • الطرح لعددين مركبين
  • الضرب لعددين مركبين
  • القسمة لعددين مركبين
  • المرافق لعدد مركب
  • القيمة المطلقة لعدد مركب
  • رفع e (أساس اللوغاريتم الطبيعي) إلى قوة عدد مركب

عوامل مخصصة

Raku يوفّر دعمًا مدمجًا للأعداد المركبة1، لذا يركّز هذا التمرين أكثر على إنشاء عوامل مخصصة2. تُصنَّف العوامل حسب موقعها بالنسبة إلى المُعامل الذي تعمل عليه. توجد أربعة أنواع في هذا التمرين، وهي:

  • Prefix (قبل)
  • Infix (بين)
  • Circumfix (محيط)، و
  • Postfix (بعد)
  1. https://docs.raku.org/numerics#Complex ↩

  2. https://docs.raku.org/language/optut ↩


المصدر

ويكيبيديايفتح الرابط في نافذة أو علامة تبويب جديدة
تعديل عبر GitHub يفتح الرابط في نافذة أو علامة تبويب جديدة
Raku Exercism

مستعد لبدء الأعداد المركبة؟

سجّل في Exercism لتتعلّم وتتقن Raku عبر 94 تمرينًا، وإرشاد بشري حقيقي، وكل ذلك مجانًا.