الصنف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) العدد العقدي الذي استدعي معه وفق الشكل القطبي.

مصادر