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

من موسوعة حسوب
طلا ملخص تعديل
لا ملخص تعديل
سطر 6: سطر 6:
===[[Ruby/Integer/sqrt|<code>sqrt</code>]]===
===[[Ruby/Integer/sqrt|<code>sqrt</code>]]===
يعيد التابع <code>sqrt‎</code> الجذر التربيعي الصحيح للعدد الصحيح الموجب المُمرر إليه.
يعيد التابع <code>sqrt‎</code> الجذر التربيعي الصحيح للعدد الصحيح الموجب المُمرر إليه.
 
==توابع الكائن العامة (Public Instance Methods)==
== توابع الكائن العامة (Public Instance Methods) ==
 
===[[Ruby/Integer/modul|<code>%</code>]]===
===[[Ruby/Integer/modul|<code>%</code>]]===
يعيد المعامل <code>%‎</code> باقي عملية القسمة الصحيحة بين عددين.
يعيد المعامل <code>%‎</code> باقي عملية القسمة الصحيحة بين عددين.
سطر 14: سطر 12:
ينفذ المعامل <code>&</code> العملية AND بين بتات العددين المعطيين.
ينفذ المعامل <code>&</code> العملية AND بين بتات العددين المعطيين.
===[[Ruby/Integer/multiplication|<code>*</code>]]===
===[[Ruby/Integer/multiplication|<code>*</code>]]===
يعيد التابع <code>*‎</code> ناتج عملية الضرب بين عددين.
يعيد المعامل <code>*‎</code> ناتج عملية الضرب بين عددين.
===[[Ruby/Integer/expo|<code>**</code>]]===
===[[Ruby/Integer/expo|<code>**</code>]]===
يعيد المعامل <code>**‎</code> ناتج عملية رفع للعدد <code>int</code> الأساس إلى قوة العدد <code>numeric</code> (الأس).
يعيد المعامل <code>**‎</code> ناتج عملية رفع للعدد <code>int</code> الأساس إلى قوة العدد <code>numeric</code> (الأس).
سطر 30: سطر 28:
يزيح المعامل <code>>></code> العدد الصحيح المعطى إلى اليسار بقدار محدَّد من المنازل، أو إلى اليمين إن كانت قيمة مقدار الإزاحة سالبةً.
يزيح المعامل <code>>></code> العدد الصحيح المعطى إلى اليسار بقدار محدَّد من المنازل، أو إلى اليمين إن كانت قيمة مقدار الإزاحة سالبةً.
===[[Ruby/Integer/3C-3D| <code>‎<=‎</code>]]===
===[[Ruby/Integer/3C-3D| <code>‎<=‎</code>]]===
يعيد التابع <code>=></code> القيمة <code>true</code> إن كانت قيمة العدد الواقع على يساره أصغر من أو تساوي قيمة العدد الواقع على يمينه.
يعيد المعامل <code>=></code> القيمة <code>true</code> إن كانت قيمة العدد الواقع على يساره أصغر من أو تساوي قيمة العدد الواقع على يمينه.
===[[Ruby/Integer/Comparison|التابع <=>]]===
===[[Ruby/Integer/Comparison|<code><=></code>]]===
يعيد معامل الموازنة <code><=></code> عددً‎ا صحيحًا (<code>‎-1</code> أو <code>0</code> أو <code>+1</code>) إذا كان العدد <code>int</code> أصغر من أو يساوي أو أكبر من العدد الآخر على التوالي.
يعيد معامل الموازنة <code><=></code> عددً‎ا صحيحًا (‎-1 أو 0 أو +1) إذا كان العدد الواقع على يساره أصغر من أو يساوي أو أكبر من العدد الآخر الواقع على يمينه على التوالي.
===[[Ruby/Integer/equal|التابع ==]]===
===[[Ruby/Integer/equal|<code>==</code>]]===
يعيد المعامل <code>==</code> القيمة <code>true</code> إن كان <code>int</code> يساوي الكائن <code>other</code> عدديًا.
يعيد المعامل <code>==</code> القيمة <code>true</code> إن كان العدد الصحيح الواقع على يساره يساوي القيمة الواقعة على يمينه.
===[[Ruby/Integer/greater|التابع >]]===
===[[Ruby/Integer/greater|<code><</code>]]===
يعيد التابع <code><</code> القيمة <code>true</code> إن كانت قيمة <code>int</code> أكبر من قيمة <code>real</code> (انظر فقرة البنية العامة).
يعيد المعامل <code><</code> القيمة <code>true</code> إن كانت قيمة العدد الواقع على يساره أكبر من قيمة العدد الآخر الواقع على يمينه.
===[[Ruby/Integer/3E-3D| التابع ‎>=‎‎‎]]===
===[[Ruby/Integer/3E-3D| <code>=<‎‎‎</code>]]===
يعيد التابع <code>=<</code> القيمة <code>true</code> إن كانت قيمة <code>int</code> أكبر من أو تساوي قيمة <code>real</code>.
يعيد التابع <code>=<</code> القيمة <code>true</code> إن كانت قيمة العدد الواقع على يساره أكبر من أو تساوي قيمة العدد الآخر الواقع على يمينه.
===[[Ruby/Integer/3E-3E| التابع ‎>>‎]]===
===[[Ruby/Integer/3E-3E| <code>>>‎</code>]]===
يعيد التابع <code><<</code> قيمة <code>int</code> مُزاحة إلى اليمين بـ <code>count</code>  موضع، أو إلى اليسار إن كان <code>count</code> سالبًا (انظر فقرة البنية العامة).
يزيح المعامل <code><<</code> العدد الصحيح المعطى إلى اليمين بقدار محدَّد من المنازل، أو إلى اليسار إن كانت قيمة مقدار الإزاحة سالبةً.
===[[Ruby/Integer/index|التابع []]]===
===<code rel="mw:WikiLink" href="Ruby/Integer/index" title="Ruby/Integer/index">[[Ruby/Integer/index|[]]]</code>===
يعيد معامل الفهرسة <code>[]</code> البتة الموجودة عند الموضع <code>n</code> في التمثيل الثنائي للعدد <code>int</code>  (انظر فقرة البنية العامة)، بحيث <code>[0]int</code> هو البتة الأقل أهمية (least significant bit).
يعيد معامل الفهرسة <code>[]</code> البت الموجودة عند الموضع <code>n</code> في التمثيل الثنائي للعدد الصحيح المعطى.
===[[Ruby/Integer/or|التابع ^]]===
===[[Ruby/Integer/or|<code>^</code>]]===
ينفذ المعامل <code>^</code> عملية "أو" الحصرية (EXCLUSIVE OR) بين بتات طرفي العملية، بتةً بتةً.
ينفذ المعامل <code>^</code> العملية XOR الثنائية بين بتات العددين المعطيين.
===[[Ruby/Integer/abs| التابع abs]]===
===[[Ruby/Integer/7C|<nowiki>|</nowiki>]]===
يعيد التابع <code>abs</code> القيمة المطلقة للعدد الذي استُدعي معه.
ينفذ المعامل <code>|</code> العملية OR بين بتات العددين المعطيين.
===[[Ruby/Integer/allbits-3F| التابع allbits?‎]]===
===[[Ruby/Integer/~|~]]===
يعيد التابع <code>allbits?‎</code> القيمة <code>true</code> إن كانت قيم كل بتات ناتج العملية <code>int & mask</code> تساوي واحد.
يعيد المعامل <code>~</code> مكمل العدد الذي استُدعي معه، إذ يقلب قيمة كل بت من بتات العدد.
===[[Ruby/Integer/anybits-3F| التابع anybits?‎]]===
===[[Ruby/Integer/abs|<code>abs</code>]]===
يعيد التابع <code>anybits?‎</code> القيمة <code>true</code> إن كانت قيمة إحدى بتات ناتج العملية <code>int & mask</code> تساوي واحد. 
يعيد القيمة المطلقة للعدد الذي استُدعي معه.
===[[Ruby/Integer/bit length| التابع bit_length]]===
===[[Ruby/Integer/allbits-3F|<code>allbits?‎</code>]]===
يعيد التابع <code>bit_length‎</code> عدد بتات قيمة العدد الذي استُدعي معه.
يتحقق إن كانت قيم كل بتات ناتج تطبيق العملية <code>[[Ruby/Integer/and|&]]</code> على العدد الصحيح المعطى مع القناع الممرر إليه تساوي الواحد.
===[[Ruby/Integer/ceil| التابع ceil]]===
===[[Ruby/Integer/anybits-3F|<code>anybits?‎</code>]]===
يعيد التابع <code>ceil‎</code> أصغر عدد من الأعداد الأكبر من أو تساوي قيمة العدد الذي استُدعي معه وبدقة (precision) تساوي <code>ndigits</code> رقم عشري (القيمة الابتدائية هي <code>0</code>) .
يتحقق إن كانت قيمة إحدى بتات ناتج تطبيق العملية <code>[[Ruby/Integer/and|&]]</code> على العدد الصحيح المعطى مع القناع الممرر إليه تساوي الواحد.
===[[Ruby/Integer/chr| التابع chr]]===
===[[Ruby/Integer/bit length|<code>bit_length</code>]]===
يعيد التابع <code>chr‎</code> سلسلة نصية تحتوي على الحرف الذي تمثله قيمة العدد الذي استُدعي معه حسب الترميز المُمرّر <code>encoding</code>.
يعيد عدد بتات العدد الذي استُدعي معه.
===[[Ruby/Integer/coerce| التابع coerce]]===
===[[Ruby/Integer/ceil|<code>ceil</code>]]===
يعيد التابع <code>coerce‎</code> مصفوفة تضم قيمتين <code>numeric</code> و <code>big</code> ممثلًا على شكل كائن من الصنف <code>Bignum</code>، وذلك عبر تحويل  <code>numeric</code> إلى <code>Bignum</code>.
يعيد أصغر عدد من الأعداد الأكبر من أو تساوي قيمة العدد الذي استُدعي معه وبدقة (precision) تساوي العدد الممرر إليه (القيمة الابتدائية هي <code>0</code>) .
===[[Ruby/Integer/denominator| التابع denominator]]===
===[[Ruby/Integer/chr|<code>chr</code>]]===
يعيد التابع <code>denominator‎</code> القيمة <code>1</code>.
يعيد سلسلة نصية تحتوي على الحرف الذي تمثله قيمة العدد الذي استُدعي معه حسب الترميز المحدد.
===[[Ruby/Integer/digits| التابع digits]]===
===[[Ruby/Integer/coerce|<code>coerce</code>]]===
يقوم التابع <code>digits‎</code> بتفكيك العدد الذي استٌدعي معه، حيث يقوم بتقسيم الأرقام التي تكوّنه من اليسار إلى اليمين،، بحيث تكون أصغر من الوسيط الممرر<code>base</code>، ذو القيمة الافتراضية <code>10</code>، ثم يضعها في مصفوفة، مع وضع الرقم الأقل دلالة ( least significant digit) في بداية المصفوفة،
يعيد مصفوفة تضم القيمتين <code>numeric</code> و <code>big</code> ممثلتين على شكل كائن من الصنف <code>Bignum</code>، وذلك عبر تحويل <code>numeric</code> إلى <code>Bignum</code>.
===[[Ruby/Integer/div| التابع div]]===
===[[Ruby/Integer/denominator|<code>denominator</code>]]===
يعيد التابع <code>div‎</code> ناتج عملية قسمة العدد <code>int</code> على العدد <code>numeric</code> (انظر فقرة البنية العامة).
يعيد القيمة <code>1</code>.
===[[Ruby/Integer/divmod| التابع divmod]]===
===[[Ruby/Integer/digits|<code>digits</code>]]===
يعيد التابع <code>divmod‎</code> مصفوفة تحتوي على حاصل (quotient) وباقي (modulus) عملية تقسيم العدد الذي استٌدعي التابع معه على العدد المُمرّر<code>numeric</code>.
يفكك العدد الذي استٌدعي معه عبر تقسيم الأرقام التي تكوّنه من اليسار إلى اليمين، بحيث تكون أصغر من الوسيط الممرر إليه ثم يضعها في مصفوفة، مع وضع الرقم الأقل أهمية (least significant digit) في بداية المصفوفة.
===[[Ruby/Integer/downto| التابع downto]]===
===[[Ruby/Integer/div|<code>div</code>]]===
يقوم التابع <code>downto‎</code> بتكرار تنفيذ الكتلة البرمجية المعطاة مع تمرير الأعداد تنازليًا بداية من العدد الذي استُدعيت معه وحتى العدد المعطى <code>limit</code>.
يعيد ناتج عملية قسمة العدد الذي استدعي معه على العدد الذي مُرِّر إليه.
===[[Ruby/Integer/even-3F| التابع even?‎]]===
===[[Ruby/Integer/divmod|<code>divmod</code>]]===
يعيد التابع <code>even?‎</code> القيمة <code>true</code> إن كان العدد الذي استٌدعي معه زوجيًا.
يعيد التابع <code>divmod‎</code> مصفوفة تحتوي على حاصل (quotient) وباقي (modulus) عملية تقسيم العدد الذي استٌدعي التابع معه على العدد المُمرّر إليه.
===[[Ruby/Integer/fdiv| التابع fdiv]]===
===[[Ruby/Integer/downto|<code>downto</code>]]===
يعيد التابع <code>fdiv‎</code> الناتج الكسري (floating point result) لعملية قسمة العدد الذي استُدعي معه على العدد المُمرّر <code>numeric</code>.
يكرر التابع <code>downto‎</code> تنفيذ الكتلة البرمجية المعطاة مع تمرير الأعداد تنازليًا بداية من العدد الذي استُدعيت معه وحتى العدد المعطى.
===[[Ruby/Integer/floor| التابع floor]]===
===[[Ruby/Integer/even-3F|<code>even?‎</code>]]===
يعيد التابع <code>floor‎</code> أكبر عدد من الأعداد الأصغر من أو تساوي العدد الذي استُدعي معه وبدقة (precision) تساوي <code>ndigits</code> رقم عشري (القيمة الابتدائية هي <code>0</code>) . 
يتحقق إن كان العدد الذي استٌدعي معه زوجيًا.
===[[Ruby/Integer/gcd| التابع gcd]]===
===[[Ruby/Integer/fdiv|<code>fdiv</code>]]===
يعيد التابع <code>gcd‎</code> أكبر قاسم مشترك للعدد الذي استُدعي معه والعدد المٌعطى. النتيجة دائمًا موجبة، كما يعيد التعبيران <code>0.gcd(x)‎</code> و <code>x.gcd(0)‎</code>. القيمة<code>x.abs</code>.
يعيد العدد العشري الناتج عن عملية قسمة العدد الذي استُدعي معه على العدد المُمرّر إليه.
===[[Ruby/Integer/gcdlcm| التابع gcdlcm]]===
===[[Ruby/Integer/floor|<code>floor</code>]]===
يعيد التابع <code>gcdlcm‎</code> مصفوفة تضم أكبر قاسم مشترك وأصغر مضاعف مشترك للعدد الذي استُدعي معه والعدد المٌعطى، أي <code>[gcd, lcm]</code>.
يعيد أكبر عدد من الأعداد الأصغر من أو تساوي العدد الذي استُدعي معه وبدقة (precision) تساوي العدد المعطى (القيمة الابتدائية هي <code>0</code>). 
===[[Ruby/Integer/inspect| التابع inspect]]===
===[[Ruby/Integer/gcd|<code>gcd</code>]]===
<code>inspect‎</code> هو اسم آخر للتابع <code>[[Ruby/Integer/to s|to_s]]</code>.
يعيد أكبر قاسم مشترك للعدد الذي استُدعي معه والعدد المٌعطى.
===[[Ruby/Integer/integer-3F| التابع integer?‎]]===
===[[Ruby/Integer/gcdlcm|<code>gcdlcm</code>]]===
يعيد التابع <code>integer?‎</code> القيمة <code>true</code> دائمًا.
يعيد مصفوفة تضم أكبر قاسم مشترك وأصغر مضاعف مشترك للعدد الذي استُدعي معه والعدد المٌعط؛ أي <code>[gcd, lcm]</code>.
===[[Ruby/Integer/lcm| التابع lcm]]===
===[[Ruby/Integer/inspect|<code>inspect</code>]]===
يعيد التابع <code>lcm‎</code> أصغر مضاعف مشترك للعدد الذي استُدعي معه والعدد المٌعطى. النتيجة دائمًا موجبة، كما يعيد التعبيران <code>0.lcm(x)‎</code> و <code>x.lcm(0)‎</code>. القيمة <code>0</code>. 
هو اسم بديل للتابع <code>[[Ruby/Integer/to s|to_s]]</code>.
===[[Ruby/Integer/magnitude| التابع magnitude]]===
===[[Ruby/Integer/integer-3F|<code>nteger?‎</code>]]===
يعيد التابع <code>magnitude</code> القيمة المطلقة للعدد الذي استُدعي معه.
يعيد القيمة <code>true</code> دائمًا إن كان العدد المستدعى معه صحيح.
===[[Ruby/Integer/modulo| التابع modulo]]===
===[[Ruby/Integer/lcm|<code>lcm</code>]]===
يعيد المعامل <code>modulo‎</code> باقي عملية قسمة العدد الذي استُدعي معه على العدد المُعطى.
يعيد أصغر مضاعف مشترك للعدد الذي استُدعي معه والعدد المٌعطى.
===[[Ruby/Integer/next| التابع next]]===
===[[Ruby/Integer/magnitude|<code>magnitude</code>]]===
يعيد التابع <code>next‎</code> العدد الموالي للعدد الذي استُدعي معه. أي <code>int+1</code>.
يعيد القيمة المطلقة للعدد الذي استُدعي معه.
===[[Ruby/Integer/nobits-3F| التابع<code>nobits?‎</code>]]===
===[[Ruby/Integer/modulo|<code>modulo</code>]]===
يعيد باقي عملية قسمة العدد الذي استُدعي معه على العدد المُعطى.
===[[Ruby/Integer/next|<code>next</code>]]===
يعيد العدد التالي للعدد الصحيح الذي استُدعي معه. أي يعيد القيمة <code>int+1</code>.
===[[Ruby/Integer/nobits-3F|<code>nobits?‎</code>]]===
يعيد التابع <code>nobits?‎</code> القيمة <code>true</code> إن كانت قيم كل البتات الناتجة عن العملية <code>int & mask</code> تخالف واحد.
يعيد التابع <code>nobits?‎</code> القيمة <code>true</code> إن كانت قيم كل البتات الناتجة عن العملية <code>int & mask</code> تخالف واحد.
===[[Ruby/Integer/numerator| التابع numerator]]===
===[[Ruby/Integer/numerator|numerator]]===
يعيد التابع <code>numerator‎</code> العدد الذي استُدعي معه.
يعيد التابع <code>numerator‎</code> العدد الذي استُدعي معه.
===[[Ruby/Integer/odd-3F| التابع<code>odd?‎</code>]]===
===[[Ruby/Integer/odd-3F|<code>odd?‎</code>]]===
يعيد التابع <code>odd?‎</code> القيمة <code>true</code> إن كان العدد الذي استٌدعي معه فرديًا. 
يتحقق إن كان العدد الذي استٌدعي معه فرديًا. 
===[[Ruby/Integer/ord| التابع ord]]===
===[[Ruby/Integer/ord|ord]]===
يعيد التابع <code>ord‎</code> العدد الذي استٌدعي معه.
يعيد التابع <code>ord‎</code> العدد الذي استٌدعي معه.
===[[Ruby/Integer/pow| التابع pow]]===
===[[Ruby/Integer/pow|pow]]===
يعيد التابع <code>pow‎</code> الأس التوافقي (modular exponentiation ) للعدد الذي استُدعي معه والعددين المٌمرّرين (الثاني اختياري).
يعيد التابع <code>pow‎</code> الأس التوافقي (modular exponentiation ) للعدد الذي استُدعي معه والعددين لمٌمرّرين (الثاني اختياري).
===[[Ruby/Integer/pred| التابع pred]]===
===[[Ruby/Integer/pred|pred]]===
يعيد التابع <code>pred‎</code> العدد السابق على العدد الذي استُدعي معه. أي <code>int-1</code>.
يعيد التابع <code>pred‎</code> العدد السابق على العدد الذي استُدعي معه. أي <code>int-1</code>.
===[[Ruby/Integer/rationalize| التابع rationalize]]===
===[[Ruby/Integer/rationalize|rationalize]]===
يعيد التابع <code>rationalize‎</code> قيمة العدد الذي استُدعي معه على شكل عدد جذري (rational). الوسيط المُمرّر <code>eps</code> يُتجاهل دائمًا.
يعيد التابع <code>rationalize‎</code> قيمة العدد الذي استُدعي معه على شكل عدد جذري (rational). الوسيط المُمرّر <code>eps</code> يُتجاهل دائمًا.
===[[Ruby/Integer/remainder| التابع remainder]]===
===[[Ruby/Integer/remainder|remainder]]===
يعيد التابع <code>remainder‎</code> باقي عملية قسمة العدد <code>int</code> على العدد <code>numeric</code> (انظر فقرة البنية العامة).
يعيد التابع <code>remainder‎</code> باقي عملية قسمة العدد <code>int</code> على العدد <code>numeric</code> (انظر فقرة البنية العامة).
===[[Ruby/Integer/round| التابع round]]===
===[[Ruby/Integer/round|round]]===
يعيد التابع <code>round‎</code> العدد الذي استُدعي معه مُقرّبًا (rounded) إلى أقرب قيمة، مع دقة (precision) تساوي <code>ndigits</code> رقم عشري (القيمة الابتدائية هي<code>0</code>) .
يعيد التابع <code>round‎</code> العدد الذي استُدعي معه مُقرّبًا (rounded) إلى أقرب قيمة، مع دقة (precision) تساوي <code>ndigits</code> رقم عشري (القيمة الابتدائية هي<code>0</code>) .
===[[Ruby/Integer/size| التابع size]]===
===[[Ruby/Integer/size|size]]===
يعيد التابع <code>size‎</code> عدد البتات في تمثيل الآلة (machine representation) للعدد الذي استُدعي معه، النتيجة تتعلق بالآلة المستخدمة.
يعيد التابع <code>size‎</code> عدد البتات في تمثيل الآلة (machine representation) للعدد الذي استُدعي معه، النتيجة تتعلق بالآلة المستخدمة.
===[[Ruby/Integer/succ| التابع succ]]===
===[[Ruby/Integer/succ|succ]]===
يعيد التابع <code>succ‎</code> العدد الموالي للعدد الذي استُدعي معه. أي <code>int+1</code>.
يعيد التابع <code>succ‎</code> العدد الموالي للعدد الذي استُدعي معه. أي <code>int+1</code>.
===[[Ruby/Integer/times| التابع times]]===
===[[Ruby/Integer/times|times]]===
يقوم التابع <code>times‎</code> بتكرار تنفيذ الكتلة البرمجية المعطاة عددًا من المرات يساوي قيمة العدد الذي استُدعي معه، مع تمرير قيم عددية ابتداء من الصفر وحتى العدد <code>int - 1</code>.
يقوم التابع <code>times‎</code> بتكرار تنفيذ الكتلة البرمجية المعطاة عددًا من المرات يساوي قيمة العدد الذي استُدعي معه، مع تمرير قيم عددية ابتداء من الصفر وحتى العدد <code>int - 1</code>.
===[[Ruby/Integer/to f| التابع to_f]]===
===[[Ruby/Integer/to f|to_f]]===
يحول التابع <code>to_f‎</code> العدد الذي استُدعي معه من الصنف <code>Integer</code> إلى الصنف <code>float</code>، في حال لم يكن التحويل ممكنًا، فستُعاد اللانهاية.
يحول التابع <code>to_f‎</code> العدد الذي استُدعي معه من الصنف <code>Integer</code> إلى الصنف <code>float</code>، في حال لم يكن التحويل ممكنًا، فستُعاد اللانهاية.
===[[Ruby/Integer/to i| التابع to_i]]===
===[[Ruby/Integer/to i|to_i]]===
يعيد التابع <code>to_i‎</code> العدد الذي استُدعي معه دون تغيير يكافئ ([[Ruby/Integer/to int|<code>to_int</code>]]).
يعيد التابع <code>to_i‎</code> العدد الذي استُدعي معه دون تغيير يكافئ ([[Ruby/Integer/to int|<code>to_int</code>]]).
===[[Ruby/Integer/to int| التابع to_int]]===
===[[Ruby/Integer/to int|to_int]]===
يعيد التابع <code>to_int</code> العدد الذي استُدعي معه دون تغيير يكافئ (<code>[[Ruby/Integer/to i|to_i]]</code>).
يعيد التابع <code>to_int</code> العدد الذي استُدعي معه دون تغيير يكافئ (<code>[[Ruby/Integer/to i|to_i]]</code>).
===[[Ruby/Integer/to r| التابع to_r]]===
===[[Ruby/Integer/to r|to_r]]===
يحول التابع <code>to_r</code> العدد الذي استُدعي معه إلى عدد جذري (rational).
يحول التابع <code>to_r</code> العدد الذي استُدعي معه إلى عدد جذري (rational).
===[[Ruby/Integer/to s| التابع to_s]]===
===[[Ruby/Integer/to s|to_s]]===
يعيد التابع <code>to_s‎</code> سلسلة نصية تحتوي على التمثيل الموضعي (place-value representation) للعدد الذي استُدعي معه، وفق الأساس (radix) المعطى<code>base</code> (محصور بين <code>2</code> و <code>36</code>)
يعيد التابع <code>to_s‎</code> سلسلة نصية تحتوي على التمثيل الموضعي (place-value representation) للعدد الذي استُدعي معه، وفق الأساس (radix) المعطى<code>base</code> (محصور بين <code>2</code> و <code>36</code>)
===[[Ruby/Integer/truncate| التابع truncate]]===
===[[Ruby/Integer/truncate|truncate]]===
يعيد التابع <code>truncate‎</code> العدد الذي استُدعي معه مُقتطعًا (truncated) إلى دقة (precision) تساوي <code>ndigits</code> رقم عشري (القيمة الابتدائية هي <code>0</code>) .
يعيد التابع <code>truncate‎</code> العدد الذي استُدعي معه مُقتطعًا (truncated) إلى دقة (precision) تساوي <code>ndigits</code> رقم عشري (القيمة الابتدائية هي <code>0</code>) .
===[[Ruby/Integer/upto| التابع upto]]===
===[[Ruby/Integer/upto|upto]]===
يقوم التابع <code>upto‎</code> بتكرار تنفيذ الكتلة البرمجية المعطاة مع تمرير الأعداد تصاعديًا بداية من العدد الذي استُدعيت معه وحتى العدد المعطى <code>limit</code>.
يقوم التابع <code>upto‎</code> بتكرار تنفيذ الكتلة البرمجية المعطاة مع تمرير الأعداد تصاعديًا بداية من العدد الذي استُدعيت معه وحتى العدد المعطى <code>limit</code>.
===[[Ruby/Integer/7C| التابع |]]===
ينفذ المعامل <code>|</code> عملية "أو" (OR) بين بتات طرفي العملية، بتةً بتةً.
===[[Ruby/Integer/~| التابع ~]]===
يعيد المعامل <code>~</code> مكمل العدد الذي استُدعي معه، حيث يقلب قيمة كل بت من بتات العدد.
==مصادر<span> </span>==
==مصادر<span> </span>==
*[http://ruby-doc.org/core-2.5.1/Integer.html قسم  الصنف Integer في توثيق روبي الرسمي.]
*[http://ruby-doc.org/core-2.5.1/Integer.html قسم  الصنف Integer في توثيق روبي الرسمي.]

مراجعة 13:55، 14 نوفمبر 2018

يمثل الصنف Integer الأعداد الصحيحة. لا يمكن إضافة تابع أحادي (singleton method) إلى كائن من الصنف Integer، وأي محاولة لفعل ذلك ستؤدي إلى إطلاق الخطأ TypeError.

الثوابت (Constants)

GMP_VERSION

يمثِّل النسخة GMP المُحمّلة.

توابع الصنف العامة (Public Class Methods)

sqrt

يعيد التابع sqrt‎ الجذر التربيعي الصحيح للعدد الصحيح الموجب المُمرر إليه.

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

%

يعيد المعامل %‎ باقي عملية القسمة الصحيحة بين عددين.

&

ينفذ المعامل & العملية AND بين بتات العددين المعطيين.

*

يعيد المعامل *‎ ناتج عملية الضرب بين عددين.

**

يعيد المعامل **‎ ناتج عملية رفع للعدد int الأساس إلى قوة العدد numeric (الأس).

+

يعيد المعامل + ناتج عملية الجمع بين عددين.

-

يعيد المعامل -‎ ناتج عملية الطرح بين عددين.

-

إن استُعمِل المعامل - بالشكل ‎-int‎‎، فسيعيد القيمة المعاكسة للعدد int‎‎ الصحيح الموجب (أي القيمة السالبة إن كان int موجبًا أو العكس).

/

يعيد المعامل /‎ ناتج عملية القسمة بين عددين.

>

يعيد المعامل > القيمة true إن كانت قيمة العدد الصحيح الواقع على يساره أصغر من قيمة العدد الصحيح المواقع على يمينه.

‎<<‎‎

يزيح المعامل >> العدد الصحيح المعطى إلى اليسار بقدار محدَّد من المنازل، أو إلى اليمين إن كانت قيمة مقدار الإزاحة سالبةً.

‎<=‎

يعيد المعامل => القيمة true إن كانت قيمة العدد الواقع على يساره أصغر من أو تساوي قيمة العدد الواقع على يمينه.

<=>

يعيد معامل الموازنة <=> عددً‎ا صحيحًا (‎-1 أو 0 أو ‎+1) إذا كان العدد الواقع على يساره أصغر من أو يساوي أو أكبر من العدد الآخر الواقع على يمينه على التوالي.

==

يعيد المعامل == القيمة true إن كان العدد الصحيح الواقع على يساره يساوي القيمة الواقعة على يمينه.

<

يعيد المعامل < القيمة true إن كانت قيمة العدد الواقع على يساره أكبر من قيمة العدد الآخر الواقع على يمينه.

=<‎‎‎

يعيد التابع =< القيمة true إن كانت قيمة العدد الواقع على يساره أكبر من أو تساوي قيمة العدد الآخر الواقع على يمينه.

>>‎

يزيح المعامل << العدد الصحيح المعطى إلى اليمين بقدار محدَّد من المنازل، أو إلى اليسار إن كانت قيمة مقدار الإزاحة سالبةً.

[]

يعيد معامل الفهرسة [] البت الموجودة عند الموضع n في التمثيل الثنائي للعدد الصحيح المعطى.

^

ينفذ المعامل ^ العملية XOR الثنائية بين بتات العددين المعطيين.

|

ينفذ المعامل | العملية OR بين بتات العددين المعطيين.

~

يعيد المعامل ~ مكمل العدد الذي استُدعي معه، إذ يقلب قيمة كل بت من بتات العدد.

abs

يعيد القيمة المطلقة للعدد الذي استُدعي معه.

allbits?‎

يتحقق إن كانت قيم كل بتات ناتج تطبيق العملية & على العدد الصحيح المعطى مع القناع الممرر إليه تساوي الواحد.

anybits?‎

يتحقق إن كانت قيمة إحدى بتات ناتج تطبيق العملية & على العدد الصحيح المعطى مع القناع الممرر إليه تساوي الواحد.

bit_length

يعيد عدد بتات العدد الذي استُدعي معه.

ceil

يعيد أصغر عدد من الأعداد الأكبر من أو تساوي قيمة العدد الذي استُدعي معه وبدقة (precision) تساوي العدد الممرر إليه (القيمة الابتدائية هي 0) .

chr

يعيد سلسلة نصية تحتوي على الحرف الذي تمثله قيمة العدد الذي استُدعي معه حسب الترميز المحدد.

coerce

يعيد مصفوفة تضم القيمتين numeric و big ممثلتين على شكل كائن من الصنف Bignum، وذلك عبر تحويل numeric إلى Bignum.

denominator

يعيد القيمة 1.

digits

يفكك العدد الذي استٌدعي معه عبر تقسيم الأرقام التي تكوّنه من اليسار إلى اليمين، بحيث تكون أصغر من الوسيط الممرر إليه ثم يضعها في مصفوفة، مع وضع الرقم الأقل أهمية (least significant digit) في بداية المصفوفة.

div

يعيد ناتج عملية قسمة العدد الذي استدعي معه على العدد الذي مُرِّر إليه.

divmod

يعيد التابع divmod‎ مصفوفة تحتوي على حاصل (quotient) وباقي (modulus) عملية تقسيم العدد الذي استٌدعي التابع معه على العدد المُمرّر إليه.

downto

يكرر التابع downto‎ تنفيذ الكتلة البرمجية المعطاة مع تمرير الأعداد تنازليًا بداية من العدد الذي استُدعيت معه وحتى العدد المعطى.

even?‎

يتحقق إن كان العدد الذي استٌدعي معه زوجيًا.

fdiv

يعيد العدد العشري الناتج عن عملية قسمة العدد الذي استُدعي معه على العدد المُمرّر إليه.

floor

يعيد أكبر عدد من الأعداد الأصغر من أو تساوي العدد الذي استُدعي معه وبدقة (precision) تساوي العدد المعطى (القيمة الابتدائية هي 0). 

gcd

يعيد أكبر قاسم مشترك للعدد الذي استُدعي معه والعدد المٌعطى.

gcdlcm

يعيد مصفوفة تضم أكبر قاسم مشترك وأصغر مضاعف مشترك للعدد الذي استُدعي معه والعدد المٌعط؛ أي [gcd, lcm].

inspect

هو اسم بديل للتابع to_s.

nteger?‎

يعيد القيمة true دائمًا إن كان العدد المستدعى معه صحيح.

lcm

يعيد أصغر مضاعف مشترك للعدد الذي استُدعي معه والعدد المٌعطى.

magnitude

يعيد القيمة المطلقة للعدد الذي استُدعي معه.

modulo

يعيد باقي عملية قسمة العدد الذي استُدعي معه على العدد المُعطى.

next

يعيد العدد التالي للعدد الصحيح الذي استُدعي معه. أي يعيد القيمة int+1.

nobits?‎

يعيد التابع nobits?‎ القيمة true إن كانت قيم كل البتات الناتجة عن العملية int & mask تخالف واحد.

numerator

يعيد التابع numerator‎ العدد الذي استُدعي معه.

odd?‎

يتحقق إن كان العدد الذي استٌدعي معه فرديًا. 

ord

يعيد التابع ord‎ العدد الذي استٌدعي معه.

pow

يعيد التابع pow‎ الأس التوافقي (modular exponentiation ) للعدد الذي استُدعي معه والعددين لمٌمرّرين (الثاني اختياري).

pred

يعيد التابع pred‎ العدد السابق على العدد الذي استُدعي معه. أي int-1.

rationalize

يعيد التابع rationalize‎ قيمة العدد الذي استُدعي معه على شكل عدد جذري (rational). الوسيط المُمرّر eps يُتجاهل دائمًا.

remainder

يعيد التابع remainder‎ باقي عملية قسمة العدد int على العدد numeric (انظر فقرة البنية العامة).

round

يعيد التابع round‎ العدد الذي استُدعي معه مُقرّبًا (rounded) إلى أقرب قيمة، مع دقة (precision) تساوي ndigits رقم عشري (القيمة الابتدائية هي0) .

size

يعيد التابع size‎ عدد البتات في تمثيل الآلة (machine representation) للعدد الذي استُدعي معه، النتيجة تتعلق بالآلة المستخدمة.

succ

يعيد التابع succ‎ العدد الموالي للعدد الذي استُدعي معه. أي int+1.

times

يقوم التابع times‎ بتكرار تنفيذ الكتلة البرمجية المعطاة عددًا من المرات يساوي قيمة العدد الذي استُدعي معه، مع تمرير قيم عددية ابتداء من الصفر وحتى العدد int - 1.

to_f

يحول التابع to_f‎ العدد الذي استُدعي معه من الصنف Integer إلى الصنف float، في حال لم يكن التحويل ممكنًا، فستُعاد اللانهاية.

to_i

يعيد التابع to_i‎ العدد الذي استُدعي معه دون تغيير يكافئ (to_int).

to_int

يعيد التابع to_int العدد الذي استُدعي معه دون تغيير يكافئ (to_i).

to_r

يحول التابع to_r العدد الذي استُدعي معه إلى عدد جذري (rational).

to_s

يعيد التابع to_s‎ سلسلة نصية تحتوي على التمثيل الموضعي (place-value representation) للعدد الذي استُدعي معه، وفق الأساس (radix) المعطىbase (محصور بين 2 و 36)

truncate

يعيد التابع truncate‎ العدد الذي استُدعي معه مُقتطعًا (truncated) إلى دقة (precision) تساوي ndigits رقم عشري (القيمة الابتدائية هي 0) .

upto

يقوم التابع upto‎ بتكرار تنفيذ الكتلة البرمجية المعطاة مع تمرير الأعداد تصاعديًا بداية من العدد الذي استُدعيت معه وحتى العدد المعطى limit.

مصادر