التابع rand‎ الخاص بالصنف Kernel في روبي

من موسوعة حسوب
< Ruby‏ | Kernel
مراجعة 08:26، 16 نوفمبر 2018 بواسطة جميل-بيلوني (نقاش | مساهمات) (تدقيق)
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)

يولد التابع rand عددًا شبه عشوائي يقع ضمن مجال محدَّد.

البنية العامة

rand(max=0)  number

إن استدعي التابع rand بدون تمرير معاملات إليه، أو إن كان max.to_i.abs == 0، فسيعيد التابع rand عددًا عشريًا شبه عشوائي (pseudo-random) محصورًا في المجال 0.0 و 1.0 (يدخل 0.0 ضمن المجال بينما لا يدخل 1.0). إذا كان max.abs أكبر من أو يساوي 1، فسيعيد rand عددًا صحيحًا عشوائيًا أكبر من أو يساوي 0، وأصغر من max.to_i.abs.

إذا كان المعامل المعطى مجالًا (من النوع Range)، فسيعيد rand عددًا عشوائيًا يقع ضمن هذا المجال (يحقق range.member?(number) == true).

يمكن تمرير قيمة سالبة أو عشرية إلى المعامل، ولكنها قد تؤدي إلى إعادة نتائج مفاجئة.

يمكن استخدام التابع srand لضمان أنه يمكن إعادة إنتاج متتاليات الأعداد العشوائية بين مختلف عمليات التشغيل للبرنامج.

المعاملات

max‎

الحد الأقصى للعدد العشوائي المراد توليده. يمكن أن يكون عددًا أو مجالًا.

القيمة المعادة

يعاد عددٌ عشوائيٌ يقع بين المجال 0.0 و 1.0 (يدخل 0.0 ضمن المجال بينما لا يدخل 1.0) إن لم يُعطَ المعامل max، أو يقع بين المجال 0.0 و max.abs إن أعطي، أو يقع بين المجال الذي يحدده المعامل max إن كان مجالًا من النوع Range.

أمثلة

مثال على استخدام التابع rand‎:

rand        #=> 0.2725926052826416‎

انظر أيضا

  • التابع Random.rand: يولد عددًا عشوائيًّا.
  • التابع srand: يحدد بذرة مولد الأعداد شبه العشوائية (system pseudo-random number generator).

مصادر