Arama butonu
Bu konudaki kullanıcılar: 1 misafir
5
Cevap
1177
Tıklama
0
Öne Çıkarma
Random Komudu Nasıl Çalışır?
A
6 yıl (28 mesaj)
Onbaşı
Konu Sahibi

Her dilde bir random komudu vardır. Peki bu randomun altında yatan ve sayıyı rastgele üreten şey nedir? Sayı nasıl rastgele üretilir?
Bence bu aslında aldatmaca. Bilgisayar bir değer üretirken illa ki bir şeyleri baz almak zorunda. Yani 0-10 arası rastgele sayı isterken bilgisyar neden 6yı değilde 3ü seçti? Bence bu bir algoritma işi. Eğer değilse de aydınlatın beni, lütfen.

DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.

Üye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.

Üye Ol Şimdi Değil



R
6 yıl (9420 mesaj)
Yarbay

C
6 yıl (104 mesaj)
Çavuş

Alıntı yaparsam

"Kullandığın dil tarihlerin başlangıcını hangi tarih saymışsa, şu anın tarihini o zamandan beri geçen milisaniye miktarı ile, "tick" sayısı ile belirtir.
Bu tick sayısı her an için değişir. Bu sayıyı "çekirdek" kabul edip, bazı işlemlerle rastgele sayı üretirler. Bir çok dilde kendiniz "seed" belirleyebiliriz."

üretim için temel esas aldığı şey tick ise algoritma üretmek zor olmasa gerek.
Bazı dillerde 0-1 arası sayı üretirken bazı dillerde aralığı kendin belirtirsin.
0-1 arası üretim yapan dillerde şu algoritma uygulanıyor olabilir =>
tick sayısını 1'den küçük oluncaya kadar sürekli 100'e böl.
tick sayısı 150859 olduğunu varsayalım;
i) 150859 / 100 = 1508,59
i) 1508,59 /100 =15,0859
i) 15,0859 /100 =0,150859

random sayısı 0.150859 olmuş olur.algoritma olarak nasıl bir yol izlediklerini bilmiyorum sadece örnek verdim.



E
6 yıl (2588 mesaj)
Yüzbaşı

Arm işlemcilerin birçoğunda ve bazı x64 lerde donanımsal sayı üreteci var. Bunlar çok hızlı şekilde gerçek rastgele sayı üretebiliyor.



< Bu ileti mobil sürüm kullanılarak atıldı >

E
6 yıl (3264 mesaj)
Yarbay

Matematikte rastgelelik, raslantı yoktur. Bildiğim kadarıyla Random üretmek için timestamp dayalı işlemler yapılıyor.



D
6 yıl (2966 mesaj)
Yarbay

Bu iş çok derin bir mevzuudur, halen daha kesin tahmin edilemez random generatör üretilemedi.

İlla derin yapacam diyenler için

Random-number generation is a complex topic. Numerical Recipes in C: The Art of Scientific Computing (William H. Press, Brian P. Flannery, Saul A. Teukolsky, William T. Vetterling; New York: Cambridge University Press, 2007, 3rd ed.) provides an excellent discussion of practical random-number generation issues in Chapter 7 (Random Numbers).

For a more theoretical discussion which also covers many practical issues in depth, see Chapter 3 (Random Numbers) in Donald E. Knuth's The Art of Computer Programming, volume 2 (Seminumerical Algorithms), 2nd ed.; Reading, Massachusetts: Addison-Wesley Publishing Company, 1981.



DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.