الفرق بين المراجعتين لصفحة: «Ruby/Complex»

من موسوعة حسوب
لا ملخص تعديل
مراجعة وتدقيق.
سطر 2: سطر 2:
[[تصنيف: Ruby]]
[[تصنيف: Ruby]]
[[تصنيف: Ruby Complex]]
[[تصنيف: Ruby Complex]]
يمكن تمثيل الأعداد العقدية (تُسمّى أيضًا أعدادًا مركبة) كزوج مكون من عدد حقيقي ووحدة تخلية (العدد <code>i</code>) ؛ وفق الشكل <code>a+bi</code>، حيث <code>a</code> هو الجزء الحقيقي، و <code>b</code> هو الجزء التخيلي و <code>i</code> هو الوحدة الخيالية.
يمكن تمثيل الأعداد العقدية (تُسمّى أيضًا أعدادًا مركبةً [complex number]) كزوج مكون من عدد حقيقي ووحدة تخلية (العدد <code>i</code>) وفق الشكل <code>a+bi</code>، إذ <code>a</code> هو الجزء الحقيقي، و <code>b</code> هو الجزء التخيلي و <code>i</code> هو الوحدة الخيالية. العدد الحقيقي <code>a</code> يساوي العدد العقدي <code>a+0i</code> حسابيًا.


العدد الحقيقي <code>a</code> يساوي رياضياتيًا العدد العقدي <code>a+0i</code>.
يمكن إنشاء الأعداد العقدية بطريقة حرفية، وأيضا باستخدام التوابع <code>Kernel.Complex</code> أو  ‏‎<code>::rect</code> أو ‏‎:<code>:polar</code> أو <code>‎.to_c</code>. إليك الأمثلة التالية:<syntaxhighlight lang="ruby">
 
يمكن إنشاء الأعداد العقدية بطريقة حرفية، وأيضا باستخدام التوابع <code>Kernel#Complex</code> أو  ‏‎<code>::rect</code> أو  ‏‎:<code>:polar</code> أو <code>‎#to_c.</code> إليك الأمثلة التالية:<syntaxhighlight lang="ruby">
2+1i                #=> (2+1i)
2+1i                #=> (2+1i)
Complex(1)          #=> (1+0i)
Complex(1)          #=> (1+0i)
سطر 12: سطر 10:
Complex.polar(2, 3)  #=> (-1.9799849932008908+0.2822400161197344i)
Complex.polar(2, 3)  #=> (-1.9799849932008908+0.2822400161197344i)
3.to_c              #=> (3+0i)
3.to_c              #=> (3+0i)
</syntaxhighlight>يمكنك أيضا إنشاء الكائنات العقدية من الأعداد من النوع  <code>float</code> أو من السلاسل النصية كما توضح الأمثلة التالية:<syntaxhighlight lang="ruby">
</syntaxhighlight>يمكنك أيضا إنشاء الكائنات العقدية من الأعداد العشرية أو من السلاسل النصية كما توضح الأمثلة التالية:<syntaxhighlight lang="ruby">
Complex(0.3)        #=> (0.3+0i)
Complex(0.3)        #=> (0.3+0i)
Complex('0.3-0.5i')  #=> (0.3-0.5i)
Complex('0.3-0.5i')  #=> (0.3-0.5i)
سطر 22: سطر 20:
'2/3+3/4i'.to_c      #=> ((2/3)+(3/4)*i)
'2/3+3/4i'.to_c      #=> ((2/3)+(3/4)*i)
'1@2'.to_c          #=> (-0.4161468365471424+0.9092974268256817i)
'1@2'.to_c          #=> (-0.4161468365471424+0.9092974268256817i)
</syntaxhighlight>تُصنّف الأعداد العقدية إلى مضبوطة (exact) و غير مضبوطة:<syntaxhighlight lang="ruby">
</syntaxhighlight>تُصنّف الأعداد العقدية إلى أعداد مضبوطة (exact) و غير مضبوطة (inexact):<syntaxhighlight lang="ruby">
Complex(1, 1) / 2    #=> ((1/2)+(1/2)*i)
Complex(1, 1) / 2    #=> ((1/2)+(1/2)*i)
Complex(1, 1) / 2.0  #=> (0.5+0.5i)
Complex(1, 1) / 2.0  #=> (0.5+0.5i)
</syntaxhighlight>
</syntaxhighlight>
==الثوابت==
==الثوابت==
===[[Ruby/Complex/I|الثابت التخيلي <code>I</code>]]===
===الثابت التخيلي <code rel="mw:WikiLink" href="./Ruby/Complex/I" title="Ruby/Complex/I">[[Ruby/Complex/I|I]]</code>===
يمثل الثابت <code>i</code> العدد التخيلي للأعداد العقدية.
يمثل الثابت <code>i</code> العدد التخيلي للأعداد العقدية.
==توابع الصنف العامة (Public Class Methods)==
==توابع الصنف العامة (Public Class Methods)==
===[[Ruby/Complex/polar|التابع <code>polar</code>]]===
===[[Ruby/Complex/polar|<code>polar</code>]]===
يعيد التابع ‎<code>polar</code> عددا عقديا وفق الشكل القطبي (polar form).
يعيد التابع ‎<code>polar</code> عددا عقديا وفق الشكل القطبي (polar form).
===[[Ruby/Complex/rect|التابع <code>rect</code>]]===
===[[Ruby/Complex/rect|<code>rect</code>]]===
يعيد التابع ‎<code>rect</code> عددا عقديا وفق الشكل الجبري أو المستطيلي (rectangular form).
يعيد عددًا عقديًا وفق الشكل الجبري أو المستطيلي (rectangular form).
===[[Ruby/Complex/rectangular|التابع <code>rectangular </code>]]===
يعيد التابع ‎<code>rectangular</code> عددا عقديا وفق الشكل الجبري أو المستطيلي (rectangular form).
==توابع الكائن العامة (Public Instance Methods)==
==توابع الكائن العامة (Public Instance Methods)==
===[[Ruby/Complex/star|المعامل <code>*</code>]]===
===[[Ruby/Complex/star|<code>*</code>]]===
يؤدي المعامل ‎<code>*</code>عملية الضرب على الأعداد العقدية.
يجري عملية الضرب على الأعداد العقدية.
===[[Ruby/Complex/exp|المعامل <code>**</code>]]===
يؤدي المعامل ‎<code>**</code>عملية الأسّ (exponentiation) على الأعداد العقدية.
===[[Ruby/Complex/plus|المعامل <code>+</code>]]===
يؤدي المعامل ‎<code>+</code>عملية الجمع على الأعداد العقدية.
===[[Ruby/Complex/-|المعامل <code>-</code>]]===
يؤدي المعامل ‎<code>-</code>عملية الطرح على الأعداد العقدية.
===[[Ruby/Complex/negation|معامل النفي <code>-</code>]]===
يعيد معامل النفي ‎<code>-</code> نفي (مقابل) العدد العقدي. 
===[[Ruby/Complex/div|المعامل <code>/</code>]]===
يؤدي المعامل ‎<code>/</code>عملية القسمة على الأعداد العقدية.
===[[Ruby/Complex/equality operator|المعامل <code>==</code>]]===
يتحقق المعامل ‎<code>==</code>من تساوي عددين عقديين.
===[[Ruby/Complex/abs|التابع <code>abs</code>]]===
يعيد التابع ‎<code>abs</code> منظم (القيمة المطلقة) للعدد العقدي الذي استدعي معه.
===[[Ruby/Complex/abs2|التابع <code>abs2</code>]]===
يعيد  التابع ‎<code>abs2</code> مربع القيمة المطلقة للعدد العقدي الذي استدعي معه.
===[[Ruby/Complex/angle|التابع ‎<code>angle</code>]]===
يعيد  التابع ‎<code>angle</code> الجزء الزاوري (angle part) للشكل القطبي للعدد العقدي الذي استدعي معه.
===[[Ruby/Complex/arg|التابع <code>arg</code>]]===
يعيد التابع ‎<code>arg</code> منظم (arg  part) العدد العقدي الذي استدعي معه وفق الشكل القطبي.
===[[Ruby/Complex/arg|التابع <code>arg</code>]]===
يعيد التابع ‎<code>conj</code> مرافق العدد العقدي.
===[[Ruby/Complex/arg|التابع <code>conjugate</code>]]===
يعيد التابع ‎<code>conjugate</code> مرافق العدد العقدي. 
===[[Ruby/Complex/denominator|التابع <code>denominator</code>]]===
يعيد التابع ‎<code>denominator</code> قاسم (denominator) العدد العقدي، أي المضاعف المشترك الأصغر (lcm) للجزءين الحقيقي والتخيلي.
===[[Ruby/Complex/fdiv|التابع <code>fdiv</code>]]===
يقوم التابع ‎<code>fdiv</code> بعملية القسمة على العدد العقدي.
===[[Ruby/Complex/finite|التابع <code>finite?‎</code>]]===
يتحقق التابع ‎<code>finite?‎</code> مما إذا كانت القيمة المطلقة (absolute part) للشكل القطبي للعدد العقدي الذي استُدعي معه منتهيًا (finite). 
===[[Ruby/Complex/imag|التابع <code>imag</code>]]===
يعيد التابع ‎<code>imag</code> الجزء التخيلي للعدد العقدي. 
===[[Ruby/Complex/imaginary|التابع <code>imaginary</code>]]===
يعيد التابع ‎<code>imaginary</code> الجزء التخيلي (imaginary part) للعدد العقدي. 
===[[Ruby/Complex/infinite|التابع <code>‎infinite?‎</code>]]===
يعيد التابع ‎<code>infinite?‎</code> قيمة بحسب ما إذا كانت القيمة المطلقة (absolute part) للشكل القطبي للعدد العقدي منتهية أو غير منتهية (infinite).
 
[[Ruby/Complex/inspect|التابع <code>inspect</code>]]


يعيد التابع <code>inspect</code> العدد العقدي على شكل سلسلة نصية لأجل التفتيش (inspection). 
===[[Ruby/Complex/exp|<code>**</code>]]===
يرفع عددًا عقديًّا إلى قوة عددٍ محدَّدٍ.
===[[Ruby/Complex/plus|<code>+</code>]]===
يجري عملية الجمع على الأعداد العقدية.
===[[Ruby/Complex/-|<code>-</code>]]===
يجري عملية الطرح بين عددين عقديين.
===[[Ruby/Complex/negation|<code>-</code>]]===
يُستعمَل لنفي العدد العقدي (القيمة السالبة منه أن كان موجبًا). 
===[[Ruby/Complex/div|<code>/</code>]]===
يجري عملية القسمة على الأعداد العقدية.
===[[Ruby/Complex/equality operator|<code>==</code>]]===
يتحقق من تساوي عددين عقديين.
===[[Ruby/Complex/abs|<code>abs</code>]]===
يحسب الطويلة (r) للعدد العقدي بشكله القطبي الذي استدعي معه ثم يعيدها.
===[[Ruby/Complex/abs2|<code>abs2</code>]]===
يعيد مربع الطويلة (r2) للعدد العقدي الذي استدعي معه.
===[[Ruby/Complex/angle|‎<code>angle</code>]]===
يحسب الجزء الزاوي (الزاوية θ) للشكل القطبي من العدد العقدي الذي استدعي معه.
===[[Ruby/Complex/arg|<code>arg</code>]]===
يعيد التابع ‎arg الجزء الزاوي (الزاوية θ) للشكل القطبي من العدد العقدي الذي استدعي معه.
===<code rel="mw:WikiLink" href="./Ruby/Complex/arg" title="Ruby/Complex/arg">[[Ruby/Complex/conj|conj]]</code>===
يعيد مرافق العدد العقدي الذي استدعي معه.
===<code rel="mw:WikiLink" href="./Ruby/Complex/arg" title="Ruby/Complex/arg">[[Ruby/Complex/conjugate|conjugate]]</code>===
يعيد مرافق العدد العقدي الذي استدعي معه.
===[[Ruby/Complex/denominator|<code>denominator</code>]]===
يعيد قاسم (denominator) العدد العقدي، أي القاسم المشترك الأصغر (LCM، اختصارٌ للعبارة lowest common multiple) للجزأين الحقيقي والتخيلي.
===[[Ruby/Complex/fdiv|<code>fdiv</code>]]===
يجري عملية القسمة على العدد العقدي.
===[[Ruby/Complex/finite|<code>finite?‎</code>]]===
يتحقق مما إذا كانت قيمة الطويلة (r) للشكل القطبي من العدد العقدي الذي استُدعي معه منتهية (finite).
===[[Ruby/Complex/imag|<code>imag</code>]]===
يعيد الجزء التخيلي <nowiki/>[[Ruby/Complex|للعدد العقدي]] الذي استدعي معه.
===[[Ruby/Complex/imaginary|<code>imaginary</code>]]===
يعيد الجزء التخيلي <nowiki/>[[Ruby/Complex|للعدد العقدي]] الذي استدعي معه.
===[[Ruby/Complex/infinite|<code>‎infinite?‎</code>]]===
يعيد قيمةً تشير إذا كانت قيمة الطويلة (r) للشكل القطبي من العدد العقدي منتهية أو غير منتهية (infinite).


[[Ruby/Complex/magnitude|التابع <code>magnitude</code>]]
=== [[Ruby/Complex/inspect|<code>inspect</code>]] ===
يعيد العدد العقدي على شكل سلسلة نصية لأجل فحصها (inspection).


=== [[Ruby/Complex/magnitude|<code>magnitude</code>]] ===
يعيد التابع ‎<code>magnitude</code> الجزء المطلق (absolute part) للشكل القطبي للعدد العقدي.
يعيد التابع ‎<code>magnitude</code> الجزء المطلق (absolute part) للشكل القطبي للعدد العقدي.
===[[Ruby/Complex/numerator|التابع <code>‎numerator‎</code>]]===
===[[Ruby/Complex/numerator|<code>‎'''numerator‎'''</code>]]===
يعيد التابع ‎<code>numerator</code> مقام (numerator) العدد العقدي. 
يعيد التابع ‎<code>numerator</code> بسط (numerator) العدد العقدي الكسري.
===[[Ruby/Complex/phase|التابع <code>phase</code>]]===
===[[Ruby/Complex/phase|<code>phase</code>]]===
 يعيد التابع ‎<code>phase</code> الجزء الزاوي (angle part) للشكل القطبي للعدد العقدي الذي استُدعي معه.
يعيد الجزء الزاوي (الزاوية θ) للشكل القطبي من العدد العقدي الذي استُدعي معه.
===[[Ruby/Complex/quo|التابع <code>quo</code>]]===
===[[Ruby/Complex/quo|<code>quo</code>]]===
يؤدي التابع ‎<code>quo</code>عملية القسمة على الأعداد العقدية.
يجري عملية القسمة على الأعداد العقدية.
===[[Ruby/Complex/rationalize|التابع <code>rationalize</code>]]===
===[[Ruby/Complex/rationalize|<code>rationalize</code>]]===
يعيد التابع ‎<code>rationalize</code> القيمة الجذرية (rational ) المقابلة للعدد العقدي. ينبغي أن يكون الجزء التخيلي معدوما. 
يعيد القيمة الجذرية (rational) المقابلة للعدد العقدي (ينبغي أن يكون الجزء التخيلي معدومًا).
 
[[Ruby/Complex/real|التابع <code>real</code>]]
 
يعيد التابع ‎<code>real</code> الجزء الحقيقي (real part) للعدد العقدي.
 
=== [[Ruby/Complex/real-3F|التابع <code>real?‎ </code>]] ===
يعيد التابع ‎<code>real?‎</code> القيمة <code>false</code> دائمًا. 
 
=== [[Ruby/Complex/to c|التابع <code>to_c</code>]] ===
يعيد التابع ‎<code>to_c</code> العدد العقدي نفسه. 
 
=== [[Ruby/Complex/to f|التابع <code>to_f</code>]] ===
يعيد التابع ‎<code>to_f</code> العدد العقدي الذي استدعي معه على شكل عدد من النوع <code>float</code> إن كان ذلك ممكنًا (ينبغي أن يساوي الجزء التخيلي العدد 0 تمامًا، وإلا فسيطلق الخطأ <code>RangeError</code>).
 
=== [[Ruby/Complex/to i|التابع <code>to_i</code>]] ===
يعيد التابع ‎<code>to_i</code> العدد العقدي الذي استدعي معه على شكل عدد صحيح من النوع <code>integer</code> إن كان ذلك ممكنًا (ينبغي أن يساوي الجزء التخيلي العدد 0 تمامًا، وإلا فسيطلق الخطأ <code>RangeError</code>).


=== [[Ruby/Complex/to s|التابع <code>to_s</code>]] ===
=== [[Ruby/Complex/real|<code>real</code>]] ===
يعيد التابع ‎<code>to_s</code> العدد العقدي الذي استدعي معه على شكل سلسلة نصية.
يعيد الجزء الحقيقي (real part) للعدد العقدي الذي استدعي معه.
===[[Ruby/Complex/real-3F|<code>real?‎</code>]]===
يعيد القيمة <code>false</code> دائمًا مع العدد العقدي.
===[[Ruby/Complex/to c|<code>to_c</code>]]===
يعيد العدد العقدي المعطى نفسه.
===[[Ruby/Complex/to f|<code>to_f</code>]]===
يحول العدد العقدي الذي استدعي معه إلى عدد عشري إن كان ذلك ممكنًا (ينبغي أن يساوي الجزء التخيلي القيمة 0 تمامًا، وإلا فسيُطلَق الخطأ <code>RangeError</code>).
===[[Ruby/Complex/to i|<code>to_i</code>]]===
يحول العدد العقدي الذي استدعي معه إلى عدد صحيح إن كان ذلك ممكنًا (ينبغي أن يساوي الجزء التخيلي القيمة 0 تمامًا، وإلا فسيُطلَق الخطأ <code>RangeError</code>). 
===[[Ruby/Complex/to s|<code>to_s</code>]]===
يحول العدد العقدي الذي استدعي معه إلى سلسلة نصية إن كان ذلك ممكنًا (ينبغي أن يساوي الجزء التخيلي القيمة 0 تمامًا، وإلا فسيُطلَق الخطأ <code>RangeError</code>).  
===[[Ruby/Complex/to r|التابع <code>to_r</code>]]===
===[[Ruby/Complex/to r|التابع <code>to_r</code>]]===
يعيد التابع ‎<code>to_r</code> القيمة الجذرية (rational ) المقابلة للعدد العقدي. ينبغي أن يكون الجزء التخيلي معدوما
يحول التابع ‎<code>to_r</code> العدد العقدي الذي استدعي معه إلى عدد من النوع <code>rational</code> إن كان ذلك ممكنًا  (ينبغي أن يساوي الجزء التخيلي القيمة 0 تمامًا، وإلا فسيطلق الخطأ <code>RangeError</code> )
==مصادر==
==مصادر==
<span> </span>
*[http://ruby-doc.org/core-2.5.1/Complex.html قسم  الصنف Complex في توثيق روبي الرسمي.]
*[http://ruby-doc.org/core-2.5.1/Complex.html قسم  الصنف Complex في توثيق روبي الرسمي.]

مراجعة 14:39، 10 نوفمبر 2018

يمكن تمثيل الأعداد العقدية (تُسمّى أيضًا أعدادًا مركبةً [complex number]) كزوج مكون من عدد حقيقي ووحدة تخلية (العدد 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)

يمكنك أيضا إنشاء الكائنات العقدية من الأعداد العشرية أو من السلاسل النصية كما توضح الأمثلة التالية:

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) و غير مضبوطة (inexact):

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

يعيد عددًا عقديًا وفق الشكل الجبري أو المستطيلي (rectangular form).

توابع الكائن العامة (Public Instance Methods)

*

يجري عملية الضرب على الأعداد العقدية.

**

يرفع عددًا عقديًّا إلى قوة عددٍ محدَّدٍ.

+

يجري عملية الجمع على الأعداد العقدية.

-

يجري عملية الطرح بين عددين عقديين.

-

يُستعمَل لنفي العدد العقدي (القيمة السالبة منه أن كان موجبًا). 

/

يجري عملية القسمة على الأعداد العقدية.

==

يتحقق من تساوي عددين عقديين.

abs

يحسب الطويلة (r) للعدد العقدي بشكله القطبي الذي استدعي معه ثم يعيدها.

abs2

يعيد مربع الطويلة (r2) للعدد العقدي الذي استدعي معه.

angle

يحسب الجزء الزاوي (الزاوية θ) للشكل القطبي من العدد العقدي الذي استدعي معه.

arg

يعيد التابع ‎arg الجزء الزاوي (الزاوية θ) للشكل القطبي من العدد العقدي الذي استدعي معه.

conj

يعيد مرافق العدد العقدي الذي استدعي معه.

conjugate

يعيد مرافق العدد العقدي الذي استدعي معه.

denominator

يعيد قاسم (denominator) العدد العقدي، أي القاسم المشترك الأصغر (LCM، اختصارٌ للعبارة lowest common multiple) للجزأين الحقيقي والتخيلي.

fdiv

يجري عملية القسمة على العدد العقدي.

finite?‎

يتحقق مما إذا كانت قيمة الطويلة (r) للشكل القطبي من العدد العقدي الذي استُدعي معه منتهية (finite).

imag

يعيد الجزء التخيلي للعدد العقدي الذي استدعي معه.

imaginary

يعيد الجزء التخيلي للعدد العقدي الذي استدعي معه.

‎infinite?‎

يعيد قيمةً تشير إذا كانت قيمة الطويلة (r) للشكل القطبي من العدد العقدي منتهية أو غير منتهية (infinite).

inspect

يعيد العدد العقدي على شكل سلسلة نصية لأجل فحصها (inspection).

magnitude

يعيد التابع ‎magnitude الجزء المطلق (absolute part) للشكل القطبي للعدد العقدي.

numerator‎

يعيد التابع ‎numerator بسط (numerator) العدد العقدي الكسري.

phase

يعيد الجزء الزاوي (الزاوية θ) للشكل القطبي من العدد العقدي الذي استُدعي معه.

quo

يجري عملية القسمة على الأعداد العقدية.

rationalize

يعيد القيمة الجذرية (rational) المقابلة للعدد العقدي (ينبغي أن يكون الجزء التخيلي معدومًا).

real

يعيد الجزء الحقيقي (real part) للعدد العقدي الذي استدعي معه.

real?‎

يعيد القيمة false دائمًا مع العدد العقدي.

to_c

يعيد العدد العقدي المعطى نفسه.

to_f

يحول العدد العقدي الذي استدعي معه إلى عدد عشري إن كان ذلك ممكنًا (ينبغي أن يساوي الجزء التخيلي القيمة 0 تمامًا، وإلا فسيُطلَق الخطأ RangeError).

to_i

يحول العدد العقدي الذي استدعي معه إلى عدد صحيح إن كان ذلك ممكنًا (ينبغي أن يساوي الجزء التخيلي القيمة 0 تمامًا، وإلا فسيُطلَق الخطأ RangeError). 

to_s

يحول العدد العقدي الذي استدعي معه إلى سلسلة نصية إن كان ذلك ممكنًا (ينبغي أن يساوي الجزء التخيلي القيمة 0 تمامًا، وإلا فسيُطلَق الخطأ RangeError).  

التابع to_r

يحول التابع ‎to_r العدد العقدي الذي استدعي معه إلى عدد من النوع rational إن كان ذلك ممكنًا (ينبغي أن يساوي الجزء التخيلي القيمة 0 تمامًا، وإلا فسيطلق الخطأ RangeError ). 

مصادر