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

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
 
(مراجعة متوسطة واحدة بواسطة نفس المستخدم غير معروضة)
سطر 1: سطر 1:
 +
<noinclude>{{DISPLAYTITLE: الصنف <code>Integer</code> في روبي}}</noinclude>
 +
[[تصنيف: Ruby]]
 +
[[تصنيف: Ruby Class]]
 +
[[تصنيف: Ruby Integer]]
 
يمثل الصنف <code>Integer</code> الأعداد الصحيحة. لا يمكن إضافة تابع أحادي (singleton method) إلى كائن من الصنف <code>Integer</code>، وأي محاولة لفعل ذلك ستؤدي إلى إطلاق الخطأ <code>[[Ruby/TypeError|TypeError]]</code>.
 
يمثل الصنف <code>Integer</code> الأعداد الصحيحة. لا يمكن إضافة تابع أحادي (singleton method) إلى كائن من الصنف <code>Integer</code>، وأي محاولة لفعل ذلك ستؤدي إلى إطلاق الخطأ <code>[[Ruby/TypeError|TypeError]]</code>.
 
==الثوابت (Constants)==
 
==الثوابت (Constants)==
سطر 43: سطر 47:
 
===[[Ruby/Integer/or|<code>^</code>]]===
 
===[[Ruby/Integer/or|<code>^</code>]]===
 
ينفذ المعامل <code>^</code> العملية XOR الثنائية بين بتات العددين المعطيين.
 
ينفذ المعامل <code>^</code> العملية XOR الثنائية بين بتات العددين المعطيين.
===[[Ruby/Integer/7C|<nowiki>|</nowiki>]]===
+
===[[Ruby/Integer/7C|<code><nowiki>|</nowiki></code>]]===
 
ينفذ المعامل <code>|</code> العملية OR بين بتات العددين المعطيين.
 
ينفذ المعامل <code>|</code> العملية OR بين بتات العددين المعطيين.
===[[Ruby/Integer/~|~]]===
+
===[[Ruby/Integer/~|<code>~</code>]]===
 
يعيد المعامل <code>~</code> مكمل العدد الذي استُدعي معه، إذ يقلب قيمة كل بت من بتات العدد.
 
يعيد المعامل <code>~</code> مكمل العدد الذي استُدعي معه، إذ يقلب قيمة كل بت من بتات العدد.
 
===[[Ruby/Integer/abs|<code>abs</code>]]===
 
===[[Ruby/Integer/abs|<code>abs</code>]]===
سطر 68: سطر 72:
 
يعيد ناتج عملية قسمة العدد الذي استدعي معه على العدد الذي مُرِّر إليه.
 
يعيد ناتج عملية قسمة العدد الذي استدعي معه على العدد الذي مُرِّر إليه.
 
===[[Ruby/Integer/divmod|<code>divmod</code>]]===
 
===[[Ruby/Integer/divmod|<code>divmod</code>]]===
يعيد التابع <code>divmod‎</code> مصفوفة تحتوي على حاصل (quotient) وباقي (modulus) عملية تقسيم العدد الذي استٌدعي التابع معه على العدد المُمرّر إليه.
+
يعيد مصفوفة تحتوي على حاصل (quotient) وباقي (modulus) عملية تقسيم العدد الذي استٌدعي التابع معه على العدد المُمرّر إليه.
 
===[[Ruby/Integer/downto|<code>downto</code>]]===
 
===[[Ruby/Integer/downto|<code>downto</code>]]===
يكرر التابع <code>downto‎</code> تنفيذ الكتلة البرمجية المعطاة مع تمرير الأعداد تنازليًا بداية من العدد الذي استُدعيت معه وحتى العدد المعطى.
+
يكرر تنفيذ الكتلة البرمجية المعطاة مع تمرير الأعداد تنازليًا بداية من العدد الذي استُدعيت معه وحتى العدد المعطى.
 
===[[Ruby/Integer/even-3F|<code>even?‎</code>]]===
 
===[[Ruby/Integer/even-3F|<code>even?‎</code>]]===
 
يتحقق إن كان العدد الذي استٌدعي معه زوجيًا.
 
يتحقق إن كان العدد الذي استٌدعي معه زوجيًا.
سطر 110: سطر 114:
 
يعيد باقي عملية قسمة العدد الذي استدعي معه على العدد الذي مُرِّر إليه.
 
يعيد باقي عملية قسمة العدد الذي استدعي معه على العدد الذي مُرِّر إليه.
 
===[[Ruby/Integer/round|<code>round</code>]]===
 
===[[Ruby/Integer/round|<code>round</code>]]===
يعيد التابع <code>round‎</code> العدد الذي استُدعي معه مُقرّبًا (rounded) إلى أقرب قيمة، مع دقة (precision) تساوي <code>ndigits</code> رقم عشري (القيمة الابتدائية هي<code>0</code>) .
+
يقرِّب العدد الذي استُدعي معه إلى أقرب قيمة مع دقة (precision) تساوي العدد الممرر إليه.
 
===[[Ruby/Integer/size|<code>size</code>]]===
 
===[[Ruby/Integer/size|<code>size</code>]]===
يعيد التابع <code>size‎</code> عدد البتات في تمثيل الآلة (machine representation) للعدد الذي استُدعي معه، النتيجة تتعلق بالآلة المستخدمة.
+
يعيد عدد البتات في تمثيل الآلة (machine representation) للعدد الذي استُدعي معه. الناتج يتعلق بالآلة المستخدمة.
 
===[[Ruby/Integer/succ|<code>succ</code>]]===
 
===[[Ruby/Integer/succ|<code>succ</code>]]===
يعيد التابع <code>succ‎</code> العدد الموالي للعدد الذي استُدعي معه. أي <code>int+1</code>.
+
يعيد العدد الموالي للعدد الذي استُدعي معه.
 
===[[Ruby/Integer/times|<code>times</code>]]===
 
===[[Ruby/Integer/times|<code>times</code>]]===
يقوم التابع <code>times‎</code> بتكرار تنفيذ الكتلة البرمجية المعطاة عددًا من المرات يساوي قيمة العدد الذي استُدعي معه، مع تمرير قيم عددية ابتداء من الصفر وحتى العدد <code>int - 1</code>.
+
يكرر تنفيذ الكتلة البرمجية المعطاة عددًا محدَّدًا من المرات مع تمرير قيم عددية ابتداءً من الصفر وحتى العدد الذي يسبق العدد المعطى.
 
===[[Ruby/Integer/to f|<code>to_f</code>]]===
 
===[[Ruby/Integer/to f|<code>to_f</code>]]===
يحول التابع <code>to_f‎</code> العدد الذي استُدعي معه من الصنف <code>Integer</code> إلى الصنف <code>float</code>، في حال لم يكن التحويل ممكنًا، فستُعاد اللانهاية.
+
يحول العدد الصحيح الذي استُدعي معه إلى عدد عشري.
===[[Ruby/Integer/to i|to_i]]===
+
===[[Ruby/Integer/to i|<code>to_i</code>]]===
يعيد التابع <code>to_i‎</code> العدد الذي استُدعي معه دون تغيير يكافئ ([[Ruby/Integer/to int|<code>to_int</code>]]).
+
يعيد العدد الصحيح الذي استُدعي معه دون تغيير.
===[[Ruby/Integer/to int|to_int]]===
+
===[[Ruby/Integer/to int|<code>to_int</code>]]===
يعيد التابع <code>to_int</code> العدد الذي استُدعي معه دون تغيير يكافئ (<code>[[Ruby/Integer/to i|to_i]]</code>).
+
يعيد العدد الصحيح الذي استُدعي معه دون تغيير.
===[[Ruby/Integer/to r|to_r]]===
+
===[[Ruby/Integer/to r|<code>to_r</code>]]===
يحول التابع <code>to_r</code> العدد الذي استُدعي معه إلى عدد جذري (rational).
+
يحول العدد الذي استُدعي معه إلى <nowiki/>[[Ruby/Rational|عدد جذري]] (rational).
===[[Ruby/Integer/to s|to_s]]===
+
===[[Ruby/Integer/to s|<code>to_s</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|<code>truncate</code>]]===
يعيد التابع <code>truncate‎</code> العدد الذي استُدعي معه مُقتطعًا (truncated) إلى دقة (precision) تساوي <code>ndigits</code> رقم عشري (القيمة الابتدائية هي <code>0</code>) .
+
يعيد العدد الذي استُدعي معه بعد اقتطاعه إلى دقة (precision) محدَّدة.
===[[Ruby/Integer/upto|upto]]===
+
===[[Ruby/Integer/upto|<code>upto</code>]]===
يقوم التابع <code>upto‎</code> بتكرار تنفيذ الكتلة البرمجية المعطاة مع تمرير الأعداد تصاعديًا بداية من العدد الذي استُدعيت معه وحتى العدد المعطى <code>limit</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 في توثيق روبي الرسمي.]

المراجعة الحالية بتاريخ 08:55، 22 نوفمبر 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

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

downto

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

even?‎

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

fdiv

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

floor

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

gcd

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

gcdlcm

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

inspect

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

nteger?‎

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

lcm

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

magnitude

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

modulo

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

next

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

nobits?‎

يتحقق إن كانت قيم كل البتات الناتجة عن العملية & بين العددين المعطيين تخالف الواحد.

numerator

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

odd?‎

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

ord

يعيد العدد الصحيح الذي استٌدعي معه.

pow

يحسب ناتج رفع الأس إلى أساس محدد أو باقي قسمة الناتج السابق على عدد محدَّد.

pred

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

rationalize

يعيد قيمة العدد الذي استُدعي معه على شكل عدد جذري (rational).

remainder

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

round

يقرِّب العدد الذي استُدعي معه إلى أقرب قيمة مع دقة (precision) تساوي العدد الممرر إليه.

size

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

succ

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

times

يكرر تنفيذ الكتلة البرمجية المعطاة عددًا محدَّدًا من المرات مع تمرير قيم عددية ابتداءً من الصفر وحتى العدد الذي يسبق العدد المعطى.

to_f

يحول العدد الصحيح الذي استُدعي معه إلى عدد عشري.

to_i

يعيد العدد الصحيح الذي استُدعي معه دون تغيير.

to_int

يعيد العدد الصحيح الذي استُدعي معه دون تغيير.

to_r

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

to_s

يحول العدد الصحيح الذي استدعي معه إلى سلسلة نصية ممثلًا بأساس محدَّد.

truncate

يعيد العدد الذي استُدعي معه بعد اقتطاعه إلى دقة (precision) محدَّدة.

upto

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

مصادر