الفرق بين المراجعتين ل"Ruby/Integer"

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
سطر 127: سطر 127:
  
 
===[[Ruby/Integer/magnitude | التابع magnitude]]===
 
===[[Ruby/Integer/magnitude | التابع magnitude]]===
 +
يعيد التابع <code>magnitude</code> القيمة المطلقة للعدد الذي استُدعي معه.
 +
 
===[[Ruby/Integer/modulo | التابع modulo]]===
 
===[[Ruby/Integer/modulo | التابع modulo]]===
 +
يعيد المعامل <code>modulo‎</code> باقي عملية قسمة العدد الذي استُدعي معه على العدد المُعطى.
 +
 
===[[Ruby/Integer/next | التابع next]]===
 
===[[Ruby/Integer/next | التابع next]]===
===[[Ruby/Integer/nobits-3F | التابع nobits?]]===
+
يعيد التابع <code>next‎</code> العدد الموالي للعدد الذي استُدعي معه. أي <code>int+1</code>.
 +
 
 +
===[[Ruby/Integer/nobits-3F | التابع<code>nobits?‎</code>]]===
 +
يعيد التابع <code>nobits?‎</code> القيمة <code>true</code> إن كانت قيم كل البتات الناتجة عن العملية <code>int & mask</code> تخالف واحد.
 +
 
 
===[[Ruby/Integer/numerator | التابع numerator]]===
 
===[[Ruby/Integer/numerator | التابع numerator]]===
===[[Ruby/Integer/odd-3F | التابع odd?]]===
+
يعيد التابع <code>numerator‎</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> العدد الذي استٌدعي معه.
 +
 
===[[Ruby/Integer/pow | التابع pow]]===
 
===[[Ruby/Integer/pow | التابع pow]]===
 +
يعيد التابع <code>pow‎</code> الأس التوافقي (modular exponentiation ) للعدد الذي استُدعي معه والعددين المٌمرّرين (الثاني اختياري).
 +
 
===[[Ruby/Integer/pred | التابع pred]]===
 
===[[Ruby/Integer/pred | التابع pred]]===
 +
يعيد التابع <code>pred‎</code> العدد السابق على العدد الذي استُدعي معه. أي <code>int-1</code>.
 +
 
===[[Ruby/Integer/rationalize | التابع rationalize]]===
 
===[[Ruby/Integer/rationalize | التابع rationalize]]===
 +
يعيد التابع <code>rationalize‎</code> قيمة العدد الذي استُدعي معه على شكل عدد جذري (rational). الوسيط المُمرّر <code>eps</code> يُتجاهل دائمًا.
 +
 
===[[Ruby/Integer/remainder | التابع remainder]]===
 
===[[Ruby/Integer/remainder | التابع remainder]]===
 +
يعيد التابع <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>) .
 +
 
===[[Ruby/Integer/size | التابع size]]===
 
===[[Ruby/Integer/size | التابع size]]===
 +
يعيد التابع <code>size‎</code> عدد البتات في تمثيل الآلة (machine representation) للعدد الذي استُدعي معه، النتيجة تتعلق بالآلة المستخدمة.
 +
 
===[[Ruby/Integer/succ | التابع succ]]===
 
===[[Ruby/Integer/succ | التابع succ]]===
 +
يعيد التابع <code>succ‎</code> العدد الموالي للعدد الذي استُدعي معه. أي <code>int+1</code>.
 +
 
===[[Ruby/Integer/times | التابع times]]===
 
===[[Ruby/Integer/times | التابع times]]===
 +
يقوم التابع <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>، في حال لم يكن التحويل ممكنًا، فستُعاد اللانهاية.
 +
 
===[[Ruby/Integer/to_i | التابع to_i]]===
 
===[[Ruby/Integer/to_i | التابع to_i]]===
 +
يعيد التابع <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>).
 +
 
===[[Ruby/Integer/to_r | التابع to_r]]===
 
===[[Ruby/Integer/to_r | التابع to_r]]===
 +
يحول التابع <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>)
 +
 
===[[Ruby/Integer/truncate | التابع truncate]]===
 
===[[Ruby/Integer/truncate | التابع truncate]]===
 +
يعيد التابع <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>.
 +
 
===[[Ruby/Integer/7C | التابع |]]===
 
===[[Ruby/Integer/7C | التابع |]]===
 +
ينفذ المعامل <code>|</code> عملية "أو" (OR) بين بتات طرفي العملية، بتةً بتةً.
 +
 
===[[Ruby/Integer/~ | التابع ~]]===
 
===[[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 في توثيق روبي الرسمي.]

مراجعة 00:48، 16 أكتوبر 2018

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

الثوابت (Constants)

الثابتة GMP_VERSION

الثابتة GMP_VERSION هي النسخة المخصصة لـ GMP المُحمّل.

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

التابع sqrt

يعيد التابع sqrt‎ الجذر المربع الصحيح للعدد الصحيح الموجب المُعطى، أي العدد الصحيح الأكبر الذي قيمته أصغر من الجذر المربع للعدد المُعطى.

التابع %

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

التابع &

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

التابع *

يعيد التابع *‎ ناتج عملية الضرب بين عددين، صنف الكائن الناتج يتعلق بصنف الطرف الثاني للعملية.

التابع **

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

التابع +

يعيد التابع + ناتج عملية الجمع بين عددين، صنف الكائن الناتج يتعلق بصنف الطرف الثاني للعملية. 

التابع -

يعيد التابع -‎ ناتج عملية الطرح بين عددين، صنف الكائن الناتج يتعلق بصنف الطرف الثاني للعملية. 

التابع -@

تعيد العملية ‎-int‎‎ مقابل العدد int‎‎.

التابع /

يعيد التابع /‎ ناتج عملية القسمة بين عددين، صنف الكائن الناتج يتعلق بصنف الطرف الثاني للعملية. 

التابع <

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

التابع ‎<<‎‎

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

التابع ‎<=‎

يعيد التابع => القيمة true إن كانت قيمة int أصغر من أو تساوي قيمة real (انظر فقرة البنية العامة).

التابع <=>

يعيد معامل الموازنة <=> عددً‎ا صحيحًا (‎-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) بين بتات طرفي العملية، بتةً بتةً.

التابع ~

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

مصادر