عدد مختلط عددی است به شکل 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) به دست میآید.
عملیات زیر را پیادهسازی کنید:
فرض کنید زبان برنامهنویسیای که استفاده میکنید پیادهسازیای برای اعداد مختلط ندارد.