یک عدد مختلط به شکل 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))
با توجه به اینکه نباید از پشتیبانی داخلی زبان برای اعداد مختلط استفاده کنید، این عملیات را پیادهسازی کنید:
در Exercism ثبتنام کنید تا Free Pascal را همراه با 100 تمرین و مربیگری انسانی واقعی یاد بگیرید و در آن استاد شوید، همهی اینها رایگان.