c# random kullanımı

lalati
01-11-2013, 13:39   |  #1  
OP Taze Üye
Teşekkür Sayısı: 0
3 mesaj
Kayıt Tarihi:Kayıt: Nis 2013

merhabalar

hoca bizden 25 kişilik bir grup düşünün bunlardan rastgele 24 kişi çıkacak ve sadece bir kişi kalacak dedi ben birazını yaptım ama gine eksikler var yardım edebilirmisiniz

[ Tüm kodu seç ] [ Yeni Pencerede Göster ]
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { Console.WriteLine("el ele tutuşan 25 öğrenciden rastgele 24 tanesi dışarı çıkacak ve bir kişi kalacak (-_-)"); Random rastgele = new Random(); string[] isimler = { "ali", "serhan", "rıdvan", "mustafa", "sabri", "mehmet", "ayşe", "fatma", "mahmut", "kezban", "alişan" }; for (int i = 0; i < 10; i++)//Buradki 10 kaç tane rast gele isim seçeceğini ayarlar.10 yerine kaç isim seçmesini istiyorsan o sayıyı yazabilirsin. { Console.WriteLine(isimler[rastgele.Next(isimler.Length)]);//isimler.Length= isimler dizisinin alanın yani kaç tane isim oldugun abakar o na gore random olarak birini seçer. } Console.ReadLine(); } } }

lalati
02-11-2013, 16:44   |  #2  
OP Taze Üye
Teşekkür Sayısı: 0
3 mesaj
Kayıt Tarihi:Kayıt: Nis 2013

85 kişi bakmış cevap veren yok :(

programı yaptım yazdım yalnız ufak bi sorun çıktı isimler 10 kere yazdırıyorum her seferinde ayrı ayrı isim sallaması gerekirken aynı ismi iki kere yazdırabiliyorbu konuda  yardım edebilecek varmı kodlar aşağıda şart kullanmamız mı gerekıyor acaba 



using System;
using System.Collections.Generic;
using System.Linq; using System.Text;
namespace ConsoleApplication1 { class Program { static void Main(string[] args)
{
Console.WriteLine("herhangi bir tuşa basarak rasgele isim çıkarabilirsiniz"); Console.WriteLine("ali, serhan, rıdvan, mustafa, sabri, mehmet, ayşe, fatma, mahmut, kezban, alişan");
Console.ReadLine();
Random rastgele = new Random();
Console.WriteLine("Rastgele çıkan isimler");
string[] isimler = { "ali", "serhan", "rıdvan", "mustafa", "sabri", "mehmet", "ayşe", "fatma", "mahmut", "kezban", "alişan" };
for (int i = 0; i < 10; i++)
{
Console.WriteLine(isimler[rastgele.Next(isimler.Length)]);
}
Console.WriteLine("kazananı görmek için herhangi bir tuşa basınız...");
Console.ReadLine();
Console.WriteLine("Kazanan ");
Console.WriteLine(isimler[rastgele.Next(0, isimler.Length)].ToString());
Console.ReadKey(); } } }

ahmetrefik
02-01-2014, 11:00   |  #3  
ahmetrefik avatarı
Taze Üye
Teşekkür Sayısı: 0
1 mesaj
Kayıt Tarihi:Kayıt: Oca 2014

Merhaba. Tekrarlama sorununu çözmek için ismi ekrana yazdırdıktan sonra isimler listesinden o ismi çıkarmalısınız.
rastgele = rastgele.Next(isimler.Length);
Console.WriteLine(isimler[rastgele]);
isimler.RemoveAt(rastgele);

fatihkral
23-01-2014, 21:35   |  #4  
Taze Üye
Teşekkür Sayısı: 0
13 mesaj
Kayıt Tarihi:Kayıt: Mar 2013

bir liste tutarak tekrarlayan isim oldugunda döngüyü tekrarla . Bir örnek 

http://www.csharpuygulamalar.com ... nsol-ebe-oyunu.html