Jump to content
Forumu Destekleyenlere Katılın ×
Paticik Forumları
2000 lerden beri faal olan, çok şukela bir paylaşım platformuyuz. Hoşgeldiniz.

[C#] Random'ın aynı sayıyı üretmesi


Mithat

Öne çıkan mesajlar

Bilenler vardır , taş kağıt makas oyunu yapıyodum proje için.

Kod

private void pictureBox4_Click(object sender, EventArgs e)
{
var numberList = Enumerable.Range(1, 3).ToList();
Random randomNumber = new Random();
int computerChoice = randomNumber.Next(0,3);
pictureBox1.Image = Proje.Properties.Resources.Tas1;
switch (computerChoice)
{
case 1:

pictureBox2.Image = Proje.Properties.Resources.Tas1;
resultLabel.Text = "Berabere";
resultsBox.AppendText("rnBerabere");
break;

case 2:
pictureBox2.Image = Proje.Properties.Resources.Kagit;
resultLabel.Text = "Bilgisayar Kazandı";
resultsBox.AppendText("rnBilgisayar Kazandı");
break;

case 3:
pictureBox2.Image = Proje.Properties.Resources.Makas;
resultLabel.Text = "Kazandınız";
resultsBox.AppendText("rnKazandınız");
break;
}
}



Bunda sıkıntı yaşıyorum , mesela bilgisayar sonucu hep taş geliyor 6-7 kere sonra makas geliyor 6-7 kere , hiç random gibi değil. Neden böyle oluyor?
Link to comment
Sosyal ağlarda paylaş

Oradan baktığında çözüme de ulaşıyorsun.

En tepedeki sonuca verilen ilk cevap:

//Function to get random number
private static readonly Random random = new Random();
private static readonly object syncLock = new object();
public static int RandomNumber(int min, int max)
{
lock(syncLock) { // synchronize
return random.Next(min, max);
}
}
Link to comment
Sosyal ağlarda paylaş

e nasıl olacak

int computerChoice = Next(numberList.Count);


şeklinde falan mı?


Bu balık vermeyip balık tutmayı öğreten halinizde seviyorumda hoca beklerken böyle bitirip eve gitmek isterken çok kötü bir his oluyo :D

Şu kodu düzeltmeme yardımcı olsanızda sonra yine öğretseniz olmuyo mu :D


namespace Proje
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

private void button1_Click(object sender, EventArgs e)
{

}

private void Form1_Load(object sender, EventArgs e)
{

}

private void pictureBox4_Click(object sender, EventArgs e)
{var numberList = Enumerable.Range(1, 3).ToList();
Random randomNumber = new Random();
int computerChoice = randomNumber.Next(numberList.Count);
pictureBox1.Image = Proje.Properties.Resources.Kagit;
switch (computerChoice)
{
case 1:

pictureBox2.Image = Proje.Properties.Resources.Tas;
resultLabel.Text = "You win";
resultsBox.AppendText("rnYou won");
break;

case 2:
pictureBox2.Image = Proje.Properties.Resources.Kagit;
resultLabel.Text = "Tie";
resultsBox.AppendText("rnYou both tied");
break;

case 3:
pictureBox2.Image = Proje.Properties.Resources.Makas;
resultLabel.Text = "Computer wins";
resultsBox.AppendText("rnComputer won");
break;
}
}

private void pictureBox3_Click(object sender, EventArgs e)
{
var numberList = Enumerable.Range(1, 3).ToList();
Random randomNumber = new Random();
int computerChoice = randomNumber.Next(numberList.Count);
pictureBox1.Image = Proje.Properties.Resources.Tas;
switch (computerChoice)
{
case 1:

pictureBox2.Image = Proje.Properties.Resources.Tas;
resultLabel.Text = "Tie";
resultsBox.AppendText("rnYou both tied");
break;

case 2:
pictureBox2.Image = Proje.Properties.Resources.Kagit;
resultLabel.Text = "Computer Wins";
resultsBox.AppendText("rnComputer Won");
break;

case 3:
pictureBox2.Image = Proje.Properties.Resources.Makas;
resultLabel.Text = "You win";
resultsBox.AppendText("rnYou won");
break;
}
}

private void pictureBox5_Click(object sender, EventArgs e)
{
var numberList = Enumerable.Range(1, 3).ToList();
Random randomNumber = new Random();
int computerChoice = randomNumber.Next(numberList.Count);
pictureBox1.Image = Proje.Properties.Resources.Makas;
switch (computerChoice)
{
case 1:

pictureBox2.Image = Proje.Properties.Resources.Tas;
resultLabel.Text = "Computer Wins";
resultsBox.AppendText("rnComputer won");
break;

case 2:
pictureBox2.Image = Proje.Properties.Resources.Kagit;
resultLabel.Text = "You win";
resultsBox.AppendText("rnYou won");
break;

case 3:
pictureBox2.Image = Proje.Properties.Resources.Makas;
resultLabel.Text = "Tie";
resultsBox.AppendText("rnYou both tied");
break;
}
}
}
}

Link to comment
Sosyal ağlarda paylaş

Misafir
Bu konu yeni mesajlara artık kapalıdır.
×
×
  • Yeni Oluştur...