المتغيرات
فضاءات التسمية
أفعال

rand

من cppreference.com
< c‏ | numeric‏ | random
معرفة في ملف <stdlib.h>
int rand();

تُرجع عدد صحيح شبه عشوائي بين 0 و RAND_MAX‎ (شاملة 0 و ‎RAND_MAX‎).

srand()‎‎ تحدد بذرة (قيمة ابتدائية) تستعملها الخوارزمية في ‎rand()‎‎.

في حالة استعمال ‎rand()‎‎ دون استدعاءات سابقا لـ srand()‎‎, تتصرف ‎rand()‎‎ كما لو كانت البذرة تساوي الواحد (أي ‎srand(1)‎‎).


كل مرة يتم تحديد نفس البذرة بـ srand()‎‎ يجب توليد نفس المتتالية جراء ‎rand()‎‎.

لا يشترط أن تكون ‎rand()‎‎ آمنة الإستخدام بين خيوط مختلفة (ليست thread-safe).

محتويات

[تعديل]المعطيات

(لا شيء)

[تعديل]القيمة المُرجعة

عدد صحيح شبه عشوائي يقع بين 0 و RAND_MAX‎ (شاملة الطرفين).

[تعديل]ملحوظات

لا يوجد ضمانات بالنسبة لجودة الأعداد المولدة. لا ينصح باستخدام ‎rand()‎‎ للأغراض الجادة مثل التشفير.

[تعديل]مثال

#include <stdio.h>#include <stdlib.h>#include <time.h>   int main(void){ srand(time(0));//use current time as seed for random generatorint random_variable = rand(); printf("Random value on [0,%d]: %d\n", RAND_MAX, random_variable);}

خرج ممكن:

Random value on [0 2147483647]: 1373858591

[تعديل]أنظر أيضا

تحدد بذرة ابتدائية يستعملها مولد الأرقام
(دالة)[edit]
أكبر قيمة يمكن توليدها بـ rand()
(ثابت ماكرو)[edit]
close