العدد المركّب هو عدد على الصورة a + b * i حيث a و b عددان حقيقيان و i يحقق i^2 = -1.
يُسمّى a الجزء الحقيقي ويُسمّى b الجزء التخيلي من z.
مرافق العدد a + b * i هو العدد a - b * i.
القيمة المطلقة للعدد المركّب z = a + b * i هي عدد حقيقي |z| = sqrt(a^2 + b^2). ومربع القيمة المطلقة |z|^2 هو ناتج ضرب z في مرافقه.
جمع/طرح عددين مركّبين يتضمّن جمع/طرح جزأيهما الحقيقي والتخيلي كلٌّ على حدة:
(a + i * b) + (c + i * d) = (a + c) + (b + d) * i,
(a + i * b) - (c + i * d) = (a - c) + (b - d) * i.
ناتج الضرب هو بحكم التعريف
(a + i * b) * (c + i * d) = (a * c - b * d) + (b * c + a * d) * i.
مقلوب عدد مركّب لا يساوي صفرًا هو
1 / (a + i * b) = a/(a^2 + b^2) - b/(a^2 + b^2) * i.
قسمة عدد مركّب a + i * b على عدد آخر c + i * d تعطي:
(a + i * b) / (c + i * d) = (a * c + b * d)/(c^2 + d^2) + (b * c - a * d)/(c^2 + d^2) * i.
يمكن التعبير عن رفع e إلى أُس مركّب بالصورة e^(a + i * b) = e^a * e^(i * b)، والحد الأخير منه تعطيه صيغة أويلر e^(i * b) = cos(b) + i * sin(b).
نفّذ العمليات التالية:
افترض أن لغة البرمجة التي تستخدمها لا تحتوي على تنفيذ للأعداد المركّبة.
سجّل في Exercism لتتعلّم وتتقن Haskell عبر 107 تمارين، وإرشاد بشري حقيقي، وكل ذلك مجانًا.