الصنفComplex في روبي
يمكن تمثيل الأعداد العقدية (تُسمّى أيضًا أعدادًا مركبة) كزوج مكون من عدد حقيقي ووحدة تخلية (العدد i) ؛ وفق الشكل a+bi، حيث a هو الجزء الحقيقي، و b هو الجزء التخيلي و i هو الوحدة الخيالية.
العدد الحقيقي a يساوي رياضياتيًا العدد العقدي a+0i.
يمكن إنشاء الأعداد العقدية بطريقة حرفية، وأيضا باستخدام التوابع Kernel#Complex أو ::rect أو ::polar أو #to_c. إليك الأمثلة التالية:
2+1i #=> (2+1i)
Complex(1) #=> (1+0i)
Complex(2, 3) #=> (2+3i)
Complex.polar(2, 3) #=> (-1.9799849932008908+0.2822400161197344i)
3.to_c #=> (3+0i)
يمكنك أيضا إنشاء الكائنات العقدية من الأعداد من النوع float أو من السلاسل النصية كما توضح الأمثلة التالية:
Complex(0.3) #=> (0.3+0i)
Complex('0.3-0.5i') #=> (0.3-0.5i)
Complex('2/3+3/4i') #=> ((2/3)+(3/4)*i)
Complex('1@2') #=> (-0.4161468365471424+0.9092974268256817i)
0.3.to_c #=> (0.3+0i)
'0.3-0.5i'.to_c #=> (0.3-0.5i)
'2/3+3/4i'.to_c #=> ((2/3)+(3/4)*i)
'1@2'.to_c #=> (-0.4161468365471424+0.9092974268256817i)
تُصنّف الأعداد العقدية إلى مضبوطة (exact) أو غير مضبوطة:
Complex(1, 1) / 2 #=> ((1/2)+(1/2)*i)
Complex(1, 1) / 2.0 #=> (0.5+0.5i)
الثوابت
الثابت التخيلي I
يمثل الثابت i العدد التخيلي للأعداد العقدية.
توابع الصنف العامة (Public Class Methods)
التابع polar
يعيد التابع polar عددا عقديا وفق الشكل القطبي (polar form).
التابع rect
يعيد التابع rect عددا عقديا وفق الشكل الجبري أو المستطيلي (rectangular form).
التابع rectangular
يعيد التابع rectangular عددا عقديا وفق الشكل الجبري أو المستطيلي (rectangular form).
توابع الكائن العامة (Public Instance Methods)
المعامل *
يؤدي المعامل *عملية الضرب على الأعداد العقدية.
المعامل **
يؤدي المعامل **عملية الأسّ (exponentiation) على الأعداد العقدية.
المعامل +
يؤدي المعامل +عملية الجمع على الأعداد العقدية.
المعامل -
يؤدي المعامل -عملية الطرح على الأعداد العقدية.
معامل النفي -
يعيد معامل النفي - نفي (مقابل) العدد العقدي.
المعامل /
يؤدي المعامل /عملية القسمة على الأعداد العقدية.
المعامل ==
يتحقق المعامل ==من تساوي عددين عقديين.
التابع abs
يعيد التابع abs منظم (القيمة المطلقة) للعدد العقدي الذي استدعي معه.
التابع abs2
يعيد التابع abs2 مربع القيمة المطلقة للعدد العقدي الذي استدعي معه.
التابع angle
يعيد التابع angle الجزء الزاوري (angle part) للشكل القطبي للعدد العقدي الذي استدعي معه.
التابع arg
يعيد التابع arg منظم (arg part) العدد العقدي الذي استدعي معه وفق الشكل القطبي.