Cevapla
 
Konu Araçları
Eski 20-03-17, 15:54 #1
halil1qq halil1qq çevrimdışı
Varsayılan Random Komutu Yardım



Merhabalar öncelikle,
Java veya herhangi bir yazılım dilinde iyi değilim yeni yeni öğreniyorum. bir tür şans oyunu gibi bir şey yazmaya taktım bu aralar. Random komutu ile ilgili bir şey sormak istiyorum. İnternette biraz araştırdığım kadarıyla random komutu bilgisayarın saatini milisaniye bazında komplike bazı işlemlerden geçiriyor. Ve sonuç olarak 0-1 arası bir çıktı veriyor. Herhangi iki bilgisayarın milisaniye bazında saatleri aynı ise random komutları aynı sonucu mu vericek aynı anda çalıştığı durumda ? Asıl öğrenmek istediğim de bu random komutuna hangi saati baz alıcağını söyliyebilir miyiz veya random komutunun ne gibi işlemlerden geçirdiğini öğrenip girdiyi kendimiz verip aynı sonucu alabilir miyiz ?
__________________
  Alıntı Yaparak CevaplaAlıntı Yaparak Cevapla
Eski 21-03-17, 19:34 #2
commodore07 commodore07 çevrimdışı
Varsayılan C: Random Komutu Yardım



Alıntı:
Gerçek Mesajı Gönderen halil1qq Mesajı Göster
Merhabalar öncelikle,
Java veya herhangi bir yazılım dilinde iyi değilim yeni yeni öğreniyorum. bir tür şans oyunu gibi bir şey yazmaya taktım bu aralar. Random komutu ile ilgili bir şey sormak istiyorum. İnternette biraz araştırdığım kadarıyla random komutu bilgisayarın saatini milisaniye bazında komplike bazı işlemlerden geçiriyor. Ve sonuç olarak 0-1 arası bir çıktı veriyor. Herhangi iki bilgisayarın milisaniye bazında saatleri aynı ise random komutları aynı sonucu mu vericek aynı anda çalıştığı durumda ? Asıl öğrenmek istediğim de bu random komutuna hangi saati baz alıcağını söyliyebilir miyiz veya random komutunun ne gibi işlemlerden geçirdiğini öğrenip girdiyi kendimiz verip aynı sonucu alabilir miyiz ?
Random Number Generator, yani rastgele sayı üreticisi denen algoritmalar, hiçbir zaman gerçek random değildir. Hepsinin çeşitli çalışma ve sayı üretme mantıkları vardır.

Kimisi o anda kodu derlerken oluşturulan bir sayıyı kullanır, kimisi çalıştığı cihazın milisaniye cinsinden tarihini alır, kimisi o anda ortamdaki sesleri kullanır, kimisi o anda klavyeye basılan tuşları baz alır, bazıları da bunların çoğunu beraber kullanır.

Kullandığın dil ve o dilin Random methodunun algoritmasını öğrenebilirsin. Bunun yanında, kendi Random Number Generator'ını da yazabilirsin. Bu senin hayal gücüne kalmış bir şey. Kullanacağın şey hayati önem taşımıyorsa, Java'nın kendi Random methodunu kullanabilirsin.

Javadaki Random() methodu varsayılan olarak sistem saatini Seed olarak alır. Aşağıdaki gibi kullanılabilir.

PHP Code:
Random r = new Random();
int randomNumber 1000 r.nextInt(10000);
System.out.println(randomNumber); 

Aşağıdaki gibi Sabit bir Seed değeri vermek, her açılışta aynı Random diziyi verir. Örnekte Seed olarak 123 kullanılmış. Boş bırakırsan Sistemin tarihini milisaniye olarak alır.

PHP Code:
Random r = new Random(123);  // <---- 
int randomNumber 1000 r.nextInt(9000);
System.out.println(randomNumber); 

[Linkleri sadece kayıtlı üyelerimiz görebilir.ForumTR üyesi olmak için tıklayınız]
  Alıntı Yaparak CevaplaAlıntı Yaparak Cevapla
Cevapla

Bu konunun kısa yolunu aşağıdaki sitelere ekleyebilirsiniz

Taglar
aynı, bilgisayarın, bir, komutu, random

Konu Araçları

Gönderme Kuralları
Yeni konu açamazsınız
Cevap yazamazsınız
Dosya gönderemezsiniz
Mesajlarınızı düzenleyemezsiniz

BB code is Açık
Smiley Açık
[IMG] kodu Açık
HTML kodu Kapalı



Tüm saatler GMT +3. Şuan saat: 19:35
(Türkiye için artık GMT +3 seçilmelidir.)

 
5651 sayılı yasaya göre forumumuzdaki mesajlardan doğabilecek her türlü sorumluluk yazan kullanıcılara aittir. Şikayet Mailimiz. İçerik, Yer Sağlayıcı Bilgilerimiz. Reklam Mailimiz. Gizlilik Politikası. Tatil
Copyright © 2016