Ruby/Integer

من موسوعة حسوب

يمثل الصنف 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) إذا كان العدد int أصغر من أو يساوي أو أكبر من العدد الآخر على التوالي.

التابع ==

يعيد المعامل == القيمة true إن كان int يساوي الكائن other عدديًا.

التابع >

يعيد التابع < القيمة true إن كانت قيمة int أكبر من قيمة real (انظر فقرة البنية العامة).

التابع ‎>=‎‎‎

يعيد التابع =< القيمة true إن كانت قيمة int أكبر من أو تساوي قيمة real.

التابع ‎>>‎

يعيد التابع << قيمة int مُزاحة إلى اليمين بـ count  موضع، أو إلى اليسار إن كان count سالبًا (انظر فقرة البنية العامة).

التابع []

يعيد معامل الفهرسة [] البتة الموجودة عند الموضع n في التمثيل الثنائي للعدد int  (انظر فقرة البنية العامة)، بحيث [0]int هو البتة الأقل أهمية (least significant bit).

التابع ^

ينفذ المعامل ^ عملية "أو" الحصرية (EXCLUSIVE OR) بين بتات طرفي العملية، بتةً بتةً.

التابع abs

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

التابع allbits?‎

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

التابع anybits?‎

يعيد التابع anybits?‎ القيمة true إن كانت قيمة إحدى بتات ناتج العملية int & mask تساوي واحد. 

التابع bit_length

يعيد التابع bit_length‎ عدد بتات قيمة العدد الذي استُدعي معه.

التابع ceil

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

التابع chr

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

التابع coerce

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

التابع denominator

يعيد التابع denominator‎ القيمة 1.

التابع digits

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

التابع div

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

التابع divmod

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

التابع downto

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

التابع even?‎

يعيد التابع even?‎ القيمة true إن كان العدد الذي استٌدعي معه زوجيًا.

التابع fdiv

يعيد التابع fdiv‎ الناتج الكسري (floating point result) لعملية قسمة العدد الذي استُدعي معه على العدد المُمرّر numeric.

التابع floor

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

التابع gcd

يعيد التابع gcd‎ أكبر قاسم مشترك للعدد الذي استُدعي معه والعدد المٌعطى. النتيجة دائمًا موجبة، كما يعيد التعبيران 0.gcd(x)‎ و x.gcd(0)‎. القيمةx.abs.

التابع gcdlcm

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

التابع inspect

inspect‎ هو اسم آخر للتابع to_s.

التابع integer?‎

يعيد التابع integer?‎ القيمة true دائمًا.

التابع lcm

يعيد التابع lcm‎ أصغر مضاعف مشترك للعدد الذي استُدعي معه والعدد المٌعطى. النتيجة دائمًا موجبة، كما يعيد التعبيران 0.lcm(x)‎ و x.lcm(0)‎. القيمة 0

التابع magnitude

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

التابع modulo

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

التابع next

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

التابعnobits?‎

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

التابع numerator

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

التابعodd?‎

يعيد التابع odd?‎ القيمة true إن كان العدد الذي استٌدعي معه فرديًا. 

التابع 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.

التابع |

ينفذ المعامل | عملية "أو" (OR) بين بتات طرفي العملية، بتةً بتةً.

التابع ~

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

مصادر