C# da random sayı üretmen için random() fonksiyonu kullanılmaktadır. Random olarak atanan değerle birlikte Next() fonksiyonu kullanılır. bu fonksiyon ile üretilen sayı için minumum ve maksimum değer belirlenebilir. Örneğin:
Random rnd = new Random();
int sayi = rnd.Next(6);
yukarıda yer alan örnekte görülebileceği gibi rnd değişkenine Random() değer tipi atanıyor ve Next() foksiyonu ile en büyük 5 olmak üzere 0'dan 5'e kadar sayı üretmesi sağlanıyor. Eğer üretilecek sayı aralığı belirlenmek isteniyorsa, fonksiyon şu şekilde düzenlenebilir.
int sayi = rnd.Next(6,9);
bu komut ile sistem 6 ile 8 arasında bir diğer üretir. Lütfen unutmayın: bu fonksiyon ile 9 değeri asla üretilmez.
Örnek : Random() fonksiyonunu daha iy anlamak için aşağıdaki örneği yapabilirisiniz. Örnekte formda yer alan "oynat" butonuna tıkladığınızda rasgele dört takım içerisinden rasegele farklı iki takım seçen, ve bu takımlara 0 ile 6 arasında rasgele skor atayan programı yazmayı deneyin. Bu örneği yapabilmek için şu önbilgilere ihtiyacınız var: diziler, döngüler ve listbox. (Zorluk Derecesi: 4/10)
Örneği yapamazsanız, mail atmanız yeterli ancak kendinizi geliştirmek için yapmaya çalışın :)
int sayi = rnd.Next ( 6 , 9 ) ;
Bu şekilde girdim run dedim fakat olmadı ne yapmalıyım?
Selim merhaba, hata mesajını paylaşır mısın? böylece nerede hata verdiğini anlayabiliriz.
10 kişiyi rasgele tekrar seçmeden yapılacak programı nasıl yazarız?
Öncelikle merhaba, sanırım sormaya çalıştığın soru: 10 kişilik bir listede, her seferinde rastgele birini seçip, seçilenin bir daha seçilmemesini sağlayan program. Bunu sanırım şu şekilde yapabilirsin:
İlk olarak 10 değişkenli bir dizi oluşturabilirsin, bu dizi içerisine her seferinde seçilen kişiyi ekleyeceksin. sonra bir dahaki seçimi dizi elemanlarıyla kıyaslayacak eğer seçilen daha önce diziye kaydedilmişse, yeniden rasgele bir sayı seçmesini sağlayacaksın. Sanrım bu problemi çözer.