C++ Random number generation

Posted: October 23, 2014 in C++
Tags:

rand fonksiyonu her çağırıldığında [0, RAND_MAX] aralığında rasgele bir tamsayı değerini geri döndürür. RAND_MAX stdlib.h başlık dosyası içinde 32767 olarak tanımlanmıştır.Rasgele sayı üreticilerinin (random number generator) kullandıkları başlangıç değerine tohum değeri (seed) denir. rand fonksiyonunu içeren programı her çalıştırdığımızda aynı tohum değerinden başlayacağı için aynı sayı zinciri elde edilecektir.

Aşağıdaki program her çalıştığında aynı değeri alır.

#include
#include
#include
using namespace std;

int main()
{
int x;
for (x = 0; x < 10; ++x)
cout<< rand()<<endl;
return 0;
}

—————————————————————————-

9

İşte ikinci fonksiyon olan srand fonksiyonu, rasgele sayı üreticisinin tohum değerini değiştirmeye yarar:

10

Programlarda bazen belirli bir aralıkta rasgele sayı üretmek isteyebiliriz. Bu durumda mod
operatörü kullanılabilir :
rand() % 2 Yalnızca 0 ya da 1 değerini üretir.
rand() % 6 0 – 5 aralığında rasgele bir değer üretir
rand() % 6 + 1 1 – 6 aralığında rasgele bir değer üretir.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s