SORU
26 Mart 2009, PERŞEMBE


C şamandıra rastgele sayı üretimi

Nasıl rastgele C yüzen oluşturabilirim ?

Tamsayı rand alın ve paylaşın bir şeyler yapabilirim diye düşündüm, bu yeterli olur mu?

CEVAP
26 Mart 2009, PERŞEMBE


rand() psudo-rasgele sayı üretmek için C kullanılır . RAND_MAX ve küçük bir matematik ile birlikte, seçtiğiniz herhangi bir keyfi aralığında rastgele sayılar üretebilirsiniz. Bu öğrenme amaçları ve oyuncak programlar için yeterli. Eğer ihtiyacınız varsagerçektennormal dağılımlı rasgele sayılar, daha gelişmiş bir yöntem istihdam etmek gerekir.


Bu 1.0, 0.0 dahil olmak üzere bir dizi oluşturur.

float r = static_cast <float> (rand()) / static_cast <float> (RAND_MAX);

Bu biraz keyfi için 0.0float, XBir sayı üretecektir:

float r2 = static_cast <float> (rand()) / (static_cast <float> (RAND_MAX/X));

Bu HI bazı keyfi için LO bazı rasgele bir sayı oluşturur:

float r3 = LO   static_cast <float> (rand()) /( static_cast <float> (RAND_MAX/(HI-LO)));

rand() işlevi genellikle Eğer gerçekten rasgele sayılar ihtiyacınız varsa yeterli olmayacaktır unutmayın.


rand(), aramadan önce ilk "tohum jeneratör srand() arıyor." rasgele sayı gerekir Bu yapılması gereken programın çalışması sırasında değil, her zaman rand() aramadan sonra. Bu genellikle şu şekilde yapılır:

srand (static_cast <unsigned> (time(0)));

rand srand çağırmak için 20* *gerekir.

time, çağırmak için 22* *gerekir.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • ETrade Supply

    ETrade Suppl

    23 Temmuz 2011
  • foreignimage

    foreignimage

    13 HAZİRAN 2006
  • Shaollin Animes

    Shaollin Ani

    19 HAZİRAN 2013