Random Sayı Sekansı Tutturulabilir Mi ?
-
Bir tane C++ da yazılmış program var. Neye göre random sayı üretiyor bilmiyorum ama yüksek olasılık olarak statik rand metodunu kullanıyor gibi.
Bu rand metodunun işleyişi neye göre baz alıyor ?
Diğer merak ettiğim konu, eğer zaman ölçekli ise, aynı anda 2 bilgisayarda üretilen rand sayıları sekans olarak aynı sekans da olurlar mı her defasında ?
Yani 0 ile 1000 arasında üretilen bir rand var diyelim. 900 ile 1000 arası benim için değerli, bu diğer bilgisayarda 0 - 100 ya da statik olarak aynı aralığa denk getirebilir miyim ?
Kullanılan metodu keşfetmek için ne gibi analiz yöntemlerine başvurmalıyım ? Daha da önemlisi nereden başlamalıyım ?
Bu arada output ya true ya da false.
Üşenenler için;
Algoritmasını bilmediğim bir random sayı üretecinin, true ya da false dan hangisini üreteceği bilinebilir mi ?
Başka bir dille anlatacak olursak, bir paranın 50% tura geleceği sonsuz denemeden sonra bulunuyor. Bilgisayarın da belli bir uzayda deneme yaptıktan sonra diyelim ki bu uzay 1 milyonluk olsun.
Yüzlerce kez denediğimde 50% true 50% false ise, bir sonraki denemem de 300 bin true çıktıktan sonra çekeceğim herşey için true çıkma olasılığı az diyebilir miyim ?
-
Hocam normalde programa verdiği seed ile alakalı. Eğer adam dediğin gibi statik yapmış ise, zaten program ilk açıldığından itibaren hep aynı output'u vermeli.
Yani True False True True False False True False dönüyorsa. İkinci açılışta da aynı olması lazım. Değilse adam seed'i zamana bağlı falan vermiş olabilir ki o zaman zaten tutturman pek mümkün değil.
-
NmC bunu yazdı
Hocam normalde programa verdiği seed ile alakalı. Eğer adam dediğin gibi statik yapmış ise, zaten program ilk açıldığından itibaren hep aynı output'u vermeli.
Yani True False True True False False True False dönüyorsa. İkinci açılışta da aynı olması lazım. Değilse adam seed'i zamana bağlı falan vermiş olabilir ki o zaman zaten tutturman pek mümkün değil.
Amaç tutturmaktan ziyade olasılığı artırmak, mümkün mü
-
ozgunlu bunu yazdıNmC bunu yazdı
Hocam normalde programa verdiği seed ile alakalı. Eğer adam dediğin gibi statik yapmış ise, zaten program ilk açıldığından itibaren hep aynı output'u vermeli.
Yani True False True True False False True False dönüyorsa. İkinci açılışta da aynı olması lazım. Değilse adam seed'i zamana bağlı falan vermiş olabilir ki o zaman zaten tutturman pek mümkün değil.
Amaç tutturmaktan ziyade olasılığı artırmak, mümkün mü
Hocam surda javada nasil attigi detayli yaziyor bir fikir olmasi acisindan bakabilirsin.
https://docs.oracle.com/javase/8/docs/api/java/util/Random.html
-
Absolut bunu yazdıozgunlu bunu yazdıNmC bunu yazdı
Hocam normalde programa verdiği seed ile alakalı. Eğer adam dediğin gibi statik yapmış ise, zaten program ilk açıldığından itibaren hep aynı output'u vermeli.
Yani True False True True False False True False dönüyorsa. İkinci açılışta da aynı olması lazım. Değilse adam seed'i zamana bağlı falan vermiş olabilir ki o zaman zaten tutturman pek mümkün değil.
Amaç tutturmaktan ziyade olasılığı artırmak, mümkün mü
Hocam surda javada nasil attigi detayli yaziyor bir fikir olmasi acisindan bakabilirsin.
https://docs.oracle.com/javase/8/docs/api/java/util/Random.html
teşekkürler hocam, inceleyeceğim.
-
"...bir sonraki denemem de 300 bin true çıktıktan sonra çekeceğim herşey için true çıkma olasılığı az diyebilir miyim ?"
Deneme sayısı arttıkça bütün olaylar normal dağılıma uyar yani bi olay sürekli başarılı oluyorsa belli bi süre sonra başarısız olmaya başlar.