الفرق بين المراجعتين لصفحة: «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
.