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

من موسوعة حسوب
< Ruby‏ | Random
مراجعة 12:03، 1 ديسمبر 2018 بواسطة محمد-خطيب (نقاش | مساهمات) (أنشأ الصفحة ب'{{DISPLAYTITLE:التابع <code>Random.rand</code> في روبي}} يعدُّ التابع <code>rand::</code> اسمًا بديلًا (alias) للتابع <code>Rub...')
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)

يعدُّ التابع 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: يُعيد سلسلةً نصيةً ثنائيةً عشوائية بحجم محدَّدٍ من البايتات.

مصادر