7 Mart 2017 Salı

Standart Kütüphane Fonksiyonları (stdlib.h) – rand() ve srand()



rand() fonksiyonu rasgele sayı üretmeye bir başlangıç değeri ile başlanır buna seed value (tohum değeri) denir.
rand() fonksiyonu her çağırıldığında aynı seed değerinden başlayacağı için aynı sayı zinciri elde edilir.
srand() fonksiyonu ise bu seed değerini değiştirmeye yarar.

Bir programın her çalışmasında farklı bir sayı zincirinin elde edilmesi için srand() fonksiyonunun rasgele sayı üreticisinin seed değerini programın her çalışmasında farklı bir değer yapması gerekir.
Bunun için çoğu zaman standard time() fonksiyonundan faydalanılır.
Aşağıdaki ifade ile program her defasında farklı bir sayı üretecektir.
    srand(time(0));


Örnek 3: rand() ve srand() Fonksiyonu