Ben zaten 0-5.All rastgele sayı üreten bir rasgele sayı üreteci sahip dikkate olduğunu tasarlamak gerekir 0-11.But gelen rastgele sayılar üreten bir rasgele sayı üreteci tasarımı çalışıyorum tasarlama 0-11 arasındaki sayılar eşit olasılıkla oluşturulmalıdır.bir rastgele sayı üreteci
kullandığım denklem foo()
Şimdi sayısı 1-5 (değil 0-5)
1. For each value of first foo(), there can be 5 possible combinations for values of second foo(). So, there are total 25 combinations possible.
2. The range of values returned by the above equation is 1 to 25, each integer occurring exactly once.
3. If the value of the equation comes out to be less than 22, return modulo division by 7 followed by adding 1. Else, again call the method recursively. The probability of returning each integer thus becomes 1/7.
oluşturur i modülü fonksiyonu değiştirebilir, burada 5*foo() + foo() -5
olan bağlantıyı bu link
geçti 12'ye kadar sayıyı tekrarlarsa ve sayı, yukarıdaki bağlantıda tanımlanmış olan fonksiyonda 24'ü aşarsa, neyin yanlış olduğunu anlayamıyorum.
Alternatif ben numarayı 0-5 üretir rasgele sayı üreteci işlevini f(6)
arama sağlar bu bir
üzerine geldi. Alternatif çözüm ben ne düşebilirsiniz Değilse
(f(6)+f(6)+f(6))%12;
? Ben burada something.The catch Eksik bu task.Maybe yaparken yardıma 0-11 arasındaki her sayı f(6)
daha generation.Other eşit olasılığına sahip olmalıdır ihtiyacımız olan Başka bir işlevi kullanamıyorum. Sadece matematiksel manipülasyonlar.
SO'ya hoş geldiniz: SE. Lütfen [sor] 'u okuyun. Yayınınız iki yönde geliştirilmelidir: Kaynağınızda bağlı kaynakla alakalı bölümleri ekleyin (kaynağın taşınması veya silinmesi durumunda) ve mevcut girişinizin kodunu girin. İyi şanslar! – mins
bu iyi mi? Bir koda ihtiyacım yok, denediğimi sağladım ... elimden geleni denedim ama hala bir şeyleri kaçırdığımı düşünüyorum. – Nilesh
Yaptığınız şey mantıklı geliyor ama onu _prove_ edebilecek birine bırakacağım. Paslıyım ve aldığım dersler bir süre önce. –