التابع Random.rand في روبي

من موسوعة حسوب
< Ruby‏ | Random
اذهب إلى التنقل اذهب إلى البحث

يعدُّ التابع rand:: اسمًا بديلًا (alias) للتابع Random::DEFAULT.rand.

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

rand  float
rand(max)  number

المعاملات

max

يكون المعامل max إما عددًا صحيحًا (integer)، أو عددًا عشريًّا (float)، أو مجالًا (range).

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

عندما يكون المعامل max عددًا صحيحًا، يُعيد التابع rand عددًا صحيحًا أكبر أو يساوي الصفر وأصغر من max. خلافًا للتابع Kernel.rand، يرمي التابع randالاستثناء ArgumentError عندما يكون المعامل maxعددًا صحيحًا سلبيًّا أو صفرًا.

عندما يكون المعامل maxعددًا عشريًّا، يعيد التابع randعددًا ذو فاصلة عائمة (floating point) عشوائيًّا يقع بين القيمتين 0.0 و maxمتضمنًا القيمة 0.0 وغير متضمَّنٍ للقيمة max.

أمَّأ عندما يكون المعامل maxمجالًا، فسيعيد التابع randعددًا عشوائيًّا يقع ضمن ذلك المجال.

يجب أن تستجيب كِلا قيمتي البداية والنهاية لتوابع الطرح (-) والجمع (+)، أو سيرمي التابع randالاستثناء ArgumentError.

أمثلة

أمثلةٌ على استعمال التابع rand:‏:‏:

prng = Random.new
prng.rand(100)       # => 42

prng.rand(1.5)       # => 1.4600282860034115

prng.rand(5..9)      # => one of [5, 6, 7, 8, 9]
prng.rand(5...9)     # => one of [5, 6, 7, 8]
prng.rand(5.0..9.0)  # => between 5.0 and 9.0, including 9.0
prng.rand(5.0...9.0) # => between 5.0 and 9.0, excluding 9.0

انظر أيضًا

  • التابع rand: يُعيد عددًا عشوائيًّا يتراوح مجاله بحسب القيمة المُمرَّرة إليه.
  • التابع urandom: يعيد سلسلةً نصيةً (string) باستخدام ميزاتٍ توفرها المنصة.
  • التابع bytes: يُعيد سلسلةً نصيةً ثنائيةً عشوائية بحجم محدَّدٍ من البايتات.

مصادر