الفرق بين المراجعتين لصفحة: «Ruby/Integer»
لا ملخص تعديل |
لا ملخص تعديل |
||
| سطر 1: | سطر 1: | ||
يمثل الصنف <code>Integer</code> الأعداد الصحيحة. لا يمكن إضافة تابع أحادي (singleton method) إلى كائن من الصنف <code>Integer</code>، وأي محاولة لفعل ذلك ستؤدي إلى إطلاق الخطأ <code>TypeError</code>.<noinclude>{{DISPLAYTITLE: صفحة الصنف <code>Integer</code> في روبي}}</noinclude> | يمثل الصنف <code>Integer</code> الأعداد الصحيحة. لا يمكن إضافة تابع أحادي (singleton method) إلى كائن من الصنف <code>Integer</code>، وأي محاولة لفعل ذلك ستؤدي إلى إطلاق الخطأ <code>TypeError</code>. | ||
== الثوابت (Constants) == | |||
=== [[Ruby/Integer/GMP VERSION|الثابتة <code>GMP_VERSION</code>]] === | |||
الثابتة <code>GMP_VERSION</code> هي النسخة المخصصة لـ GMP المُحمّل.<noinclude>{{DISPLAYTITLE: صفحة الصنف <code>Integer</code> في روبي}}</noinclude> | |||
[[تصنيف: Ruby]] | [[تصنيف: Ruby]] | ||
[[تصنيف: Ruby Integer]] | [[تصنيف: Ruby Integer]] | ||
==توابع الصنف العامة (Public Class Methods)== | ==توابع الصنف العامة (Public Class Methods)== | ||
===[[Ruby/Integer/ | === [[Ruby/Integer/sqrt|التابع sqrt]]=== | ||
===[[Ruby/Integer/ | يعيد التابع <code>sqrt</code> الجذر المربع الصحيح للعدد الصحيح الموجب المُعطى، أي العدد الصحيح الأكبر الذي قيمته أصغر من الجذر المربع للعدد المُعطى. | ||
===[[Ruby/Integer/ | |||
===[[Ruby/Integer/ | === [[Ruby/Integer/modul|التابع %]]=== | ||
===[[Ruby/Integer/ | يعيد المعامل <code>%</code> باقي عملية القسمة الصحيحة. | ||
===[[Ruby/Integer/ | |||
===[[Ruby/Integer/ | === [[Ruby/Integer/and|التابع &]]=== | ||
===[[Ruby/Integer/ | ينفذ المعامل <code>&</code> عملية "و" (AND) بين بتات طرفي العملية، بتةً بتةً. | ||
===[[Ruby/Integer/ | |||
===[[Ruby/Integer/ | === [[Ruby/Integer/multiplication|التابع *]]=== | ||
===[[Ruby/Integer/3C-3C | التابع <<]]=== | يعيد التابع <code>*</code> ناتج عملية الضرب بين عددين، صنف الكائن الناتج يتعلق بصنف الطرف الثاني للعملية. | ||
===[[Ruby/Integer/3C-3D | التابع <=]]=== | |||
===[[Ruby/Integer/ | === [[Ruby/Integer/expo|التابع **]]=== | ||
===[[Ruby/Integer/ | يعيد التابع <code>**</code> ناتج عملية الأس للعدد <code>int</code> مرفوعًا إلى العدد<code>numeric.</code> | ||
== | |||
===[[Ruby/Integer/ | === [[Ruby/Integer/plus|التابع +]]=== | ||
===[[Ruby/Integer/3E-3D | التابع >=]]=== | يعيد التابع <code>+</code> ناتج عملية الجمع بين عددين، صنف الكائن الناتج يتعلق بصنف الطرف الثاني للعملية. | ||
===[[Ruby/Integer/3E-3E | التابع >>]]=== | |||
===[[Ruby/Integer/ | === [[Ruby/Integer/minus|التابع -]]=== | ||
===[[Ruby/Integer/ | يعيد التابع <code>-</code> ناتج عملية الطرح بين عددين، صنف الكائن الناتج يتعلق بصنف الطرف الثاني للعملية. | ||
=== [[Ruby/Integer/negation|التابع -@]]=== | |||
تعيد العملية <code>-int</code> مقابل العدد <code>int</code>. | |||
=== [[Ruby/Integer/division|التابع /]]=== | |||
يعيد التابع <code>/</code> ناتج عملية القسمة بين عددين، صنف الكائن الناتج يتعلق بصنف الطرف الثاني للعملية. | |||
=== [[Ruby/Integer/lt|التابع <]]=== | |||
يعيد التابع <code>></code> القيمة <code>true</code> إن كانت قيمة <code>int</code> أصغر من قيمة <code>real</code> (انظر فقرة البنية العامة). | |||
===[[Ruby/Integer/3C-3C | التابع <<]]=== | |||
يعيد التابع <code>>></code> قيمة <code>int</code> مُزاحة إلى اليسار بـ <code>count</code> موضع، أو إلى اليمين إن كان <code>count</code> سالبًا (انظر فقرة البنية العامة). | |||
===[[Ruby/Integer/3C-3D | التابع <=]]=== | |||
يعيد التابع <code>=></code> القيمة <code>true</code> إن كانت قيمة <code>int</code> أصغر من أو تساوي قيمة <code>real</code> (انظر فقرة البنية العامة). | |||
=== [[Ruby/Integer/Comparison|التابع <=>]]=== | |||
يعيد معامل الموازنة <code><=></code> عددًا صحيحًا (<code>-1</code> أو <code>0</code> أو <code>+1</code>) إذا كان العدد <code>int</code> أصغر من أو يساوي أو أكبر من العدد الآخر على التوالي. | |||
=== [[Ruby/Integer/equal|التابع ==]]=== | |||
يعيد المعامل <code>==</code> القيمة <code>true</code> إن كان <code>int</code> يساوي الكائن <code>other</code> عدديًا. | |||
=== [[Ruby/Integer/greater|التابع >]]=== | |||
يعيد التابع <code><</code> القيمة <code>true</code> إن كانت قيمة <code>int</code> أكبر من قيمة <code>real</code> (انظر فقرة البنية العامة). | |||
===[[Ruby/Integer/3E-3D | التابع >=]]=== | |||
يعيد التابع <code>=<</code> القيمة <code>true</code> إن كانت قيمة <code>int</code> أكبر من أو تساوي قيمة <code>real</code>. | |||
===[[Ruby/Integer/3E-3E | التابع >>]]=== | |||
يعيد التابع <code><<</code> قيمة <code>int</code> مُزاحة إلى اليمين بـ <code>count</code> موضع، أو إلى اليسار إن كان <code>count</code> سالبًا (انظر فقرة البنية العامة). | |||
=== [[Ruby/Integer/index|التابع []]]=== | |||
يعيد معامل الفهرسة <code>[]</code> البتة الموجودة عند الموضع <code>n</code> في التمثيل الثنائي للعدد <code>int</code> (انظر فقرة البنية العامة)، بحيث <code>[0]int</code> هو البتة الأقل أهمية (least significant bit). | |||
=== [[Ruby/Integer/or|التابع ^]]=== | |||
ينفذ المعامل <code>^</code> عملية "أو" الحصرية (EXCLUSIVE OR) بين بتات طرفي العملية، بتةً بتةً. | |||
===[[Ruby/Integer/abs | التابع abs]]=== | ===[[Ruby/Integer/abs | التابع abs]]=== | ||
===[[Ruby/Integer/allbits-3F | التابع allbits?]]=== | يعيد التابع <code>abs</code> القيمة المطلقة للعدد الذي استُدعي معه. | ||
===[[Ruby/Integer/anybits-3F | التابع anybits?]]=== | |||
===[[Ruby/Integer/allbits-3F | التابع allbits?]]=== | |||
يعيد التابع <code>allbits?</code> القيمة <code>true</code> إن كانت قيم كل بتات ناتج العملية <code>int & mask</code> تساوي واحد. | |||
===[[Ruby/Integer/anybits-3F | التابع anybits?]]=== | |||
يعيد التابع <code>anybits?</code> القيمة <code>true</code> إن كانت قيمة إحدى بتات ناتج العملية <code>int & mask</code> تساوي واحد. | |||
===[[Ruby/Integer/bit_length | التابع bit_length]]=== | ===[[Ruby/Integer/bit_length | التابع bit_length]]=== | ||
يعيد التابع <code>bit_length</code> عدد بتات قيمة العدد الذي استُدعي معه. | |||
===[[Ruby/Integer/ceil | التابع ceil]]=== | ===[[Ruby/Integer/ceil | التابع ceil]]=== | ||
يعيد التابع <code>ceil</code> أصغر عدد من الأعداد الأكبر من أو تساوي قيمة العدد الذي استُدعي معه وبدقة (precision) تساوي <code>ndigits</code> رقم عشري (القيمة الابتدائية هي <code>0</code>) . | |||
===[[Ruby/Integer/chr | التابع chr]]=== | ===[[Ruby/Integer/chr | التابع chr]]=== | ||
يعيد التابع <code>chr</code> سلسلة نصية تحتوي على الحرف الذي تمثله قيمة العدد الذي استُدعي معه حسب الترميز المُمرّر <code>encoding</code>. | |||
===[[Ruby/Integer/coerce | التابع coerce]]=== | ===[[Ruby/Integer/coerce | التابع coerce]]=== | ||
يعيد التابع <code>coerce</code> مصفوفة تضم قيمتين <code>numeric</code> و <code>big</code> ممثلًا على شكل كائن من الصنف <code>Bignum</code>، وذلك عبر تحويل <code>numeric</code> إلى <code>Bignum</code>. | |||
===[[Ruby/Integer/denominator | التابع denominator]]=== | ===[[Ruby/Integer/denominator | التابع denominator]]=== | ||
يعيد التابع <code>denominator</code> القيمة <code>1</code>. | |||
===[[Ruby/Integer/digits | التابع digits]]=== | ===[[Ruby/Integer/digits | التابع digits]]=== | ||
يقوم التابع <code>digits</code> بتفكيك العدد الذي استٌدعي معه، حيث يقوم بتقسيم الأرقام التي تكوّنه من اليسار إلى اليمين،، بحيث تكون أصغر من الوسيط الممرر<code>base</code>، ذو القيمة الافتراضية <code>10</code>، ثم يضعها في مصفوفة، مع وضع الرقم الأقل دلالة ( least significant digit) في بداية المصفوفة، | |||
===[[Ruby/Integer/div | التابع div]]=== | ===[[Ruby/Integer/div | التابع div]]=== | ||
يعيد التابع <code>div</code> ناتج عملية قسمة العدد <code>int</code> على العدد <code>numeric</code> (انظر فقرة البنية العامة). | |||
===[[Ruby/Integer/divmod | التابع divmod]]=== | ===[[Ruby/Integer/divmod | التابع divmod]]=== | ||
يعيد التابع <code>divmod</code> مصفوفة تحتوي على حاصل (quotient) وباقي (modulus) عملية تقسيم العدد الذي استٌدعي التابع معه على العدد المُمرّر<code>numeric</code>. | |||
===[[Ruby/Integer/downto | التابع downto]]=== | ===[[Ruby/Integer/downto | التابع downto]]=== | ||
===[[Ruby/Integer/even-3F | التابع even?]]=== | يقوم التابع <code>downto</code> بتكرار تنفيذ الكتلة البرمجية المعطاة مع تمرير الأعداد تنازليًا بداية من العدد الذي استُدعيت معه وحتى العدد المعطى <code>limit</code>. | ||
===[[Ruby/Integer/even-3F | التابع even?]]=== | |||
يعيد التابع <code>even?</code> القيمة <code>true</code> إن كان العدد الذي استٌدعي معه زوجيًا. | |||
===[[Ruby/Integer/fdiv | التابع fdiv]]=== | ===[[Ruby/Integer/fdiv | التابع fdiv]]=== | ||
يعيد التابع <code>fdiv</code> الناتج الكسري (floating point result) لعملية قسمة العدد الذي استُدعي معه على العدد المُمرّر <code>numeric</code>. | |||
===[[Ruby/Integer/floor | التابع floor]]=== | ===[[Ruby/Integer/floor | التابع floor]]=== | ||
يعيد التابع <code>floor</code> أكبر عدد من الأعداد الأصغر من أو تساوي العدد الذي استُدعي معه وبدقة (precision) تساوي <code>ndigits</code> رقم عشري (القيمة الابتدائية هي <code>0</code>) . | |||
===[[Ruby/Integer/gcd | التابع gcd]]=== | ===[[Ruby/Integer/gcd | التابع gcd]]=== | ||
يعيد التابع <code>gcd</code> أكبر قاسم مشترك للعدد الذي استُدعي معه والعدد المٌعطى. النتيجة دائمًا موجبة، كما يعيد التعبيران <code>0.gcd(x)</code> و <code>x.gcd(0)</code>. القيمة<code>x.abs</code>. | |||
===[[Ruby/Integer/gcdlcm | التابع gcdlcm]]=== | ===[[Ruby/Integer/gcdlcm | التابع gcdlcm]]=== | ||
يعيد التابع <code>gcdlcm</code> مصفوفة تضم أكبر قاسم مشترك وأصغر مضاعف مشترك للعدد الذي استُدعي معه والعدد المٌعطى، أي <code>[gcd, lcm]</code>. | |||
===[[Ruby/Integer/inspect | التابع inspect]]=== | ===[[Ruby/Integer/inspect | التابع inspect]]=== | ||
===[[Ruby/Integer/integer-3F | التابع integer?]]=== | <code>inspect</code> هو اسم آخر للتابع <code>[[Ruby/Integer/to s|to_s]]</code>. | ||
===[[Ruby/Integer/integer-3F | التابع integer?]]=== | |||
يعيد التابع <code>integer?</code> القيمة <code>true</code> دائمًا. | |||
===[[Ruby/Integer/lcm | التابع lcm]]=== | ===[[Ruby/Integer/lcm | التابع lcm]]=== | ||
يعيد التابع <code>lcm</code> أصغر مضاعف مشترك للعدد الذي استُدعي معه والعدد المٌعطى. النتيجة دائمًا موجبة، كما يعيد التعبيران <code>0.lcm(x)</code> و <code>x.lcm(0)</code>. القيمة <code>0</code>. | |||
===[[Ruby/Integer/magnitude | التابع magnitude]]=== | ===[[Ruby/Integer/magnitude | التابع magnitude]]=== | ||
===[[Ruby/Integer/modulo | التابع modulo]]=== | ===[[Ruby/Integer/modulo | التابع modulo]]=== | ||
مراجعة 23:01، 15 أكتوبر 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.