الصنف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) العدد العقدي الذي استدعي معه وفق الشكل القطبي.
التابع arg
يعيد التابع conj
مرافق العدد العقدي.
التابع conjugate
يعيد التابع conjugate
مرافق العدد العقدي.
التابع denominator
يعيد التابع denominator
قاسم (denominator) العدد العقدي، أي المضاعف المشترك الأصغر (lcm) للجزءين الحقيقي والتخيلي.
التابع fdiv
يقوم التابع fdiv
بعملية القسمة على العدد العقدي.
التابع finite?
يتحقق التابع finite?
مما إذا كانت القيمة المطلقة (absolute part) للشكل القطبي للعدد العقدي الذي استُدعي معه منتهيًا (finite).