Visual Studio C# Sayı Tahmin Uygulamasında rastgele olarak üretilen bir sayının kullanıcı tarafından tahmin edilmesini sağlayan programı yapacağız. İlk Olarak aşağıdaki form tasarımını yapıyoruz formumuza 5 Label, 2 Textbox,1 ListBox, 1 Buton yerleştiriyoruz tasarım alanında Kaçıncı Tahmin yazan label karşındaki labelin çerçeveli görünebilmesi için labelin özelliklerinden BorderStyle seçeneğini FixedSingle, Üretilen Sayı Labelin karşısına yerleştirdiğimiz textbox’ın içeriğinin kullanıcı tarafından değiştirilememesi için Enabled özelliğini False yapıyoruz.
Daha sonra tahmin sayısını belirtmek için Form_Load olayının hemen üzerinde kacinci isimli genel bir değişken tanımlıyoruz.
int kacinci = 1;
ve Aşağıdaki kodları sayfamıza yerleştiriyoruz.
// Form1e ait global değişkenler int kacinci = 1; private void Form1_Load(object sender, System.EventArgs e) { Random rsu=new Random(); // Rastgele sayı üretilecek değişken rsu int sayi; sayi= rsu.Next(1,51); // 1 ile 50 arasında sayı üretimi. textBox1.Text=sayi.ToString(); } //www.bilisimogretmeni.com private void button1_Click(object sender, System.EventArgs e) { int tahmin, uretilen; tahmin= Convert.ToInt32(textBox2.Text); uretilen= Convert.ToInt32(textBox1.Text); if (tahmin<uretilen) { MessageBox.Show(“Üretilen sayı daha BÜYÜK!“); listBox1.Items.Add(tahmin); kacinci=kacinci+1; label4.Text=(kacinci-1).ToString(); } else if (tahmin>uretilen) { MessageBox.Show(“Üretilen sayı daha KÜÇÜK!“); listBox1.Items.Add(tahmin); kacinci++; label4.Text=(kacinci-1).ToString(); } else //eşitse { MessageBox.Show(kacinci.ToString() + “. seferde bildiniz. TEBRİKLER!“); } } //www.bilisimogretmeni.com
İndir “Visual Studio C# Uygulamalari Sayi Tahmin Oyunu”
sayitahminprogrami.zip – 3540 defa indirildi –
burda listboxun ne işe yaradığını ve tahminimizin sayıya yaklaştığını nasıl anlicaz ?
Listboxın içine girilen sayılar ekleniyor, girilen sayıya göre uyarı mesajı veriliyor
hocam buna zamanlama ekleye bilirmiyiz sayac eyer eklenirse cok ii olur tam yardımcı olursunuz
eklenebilir tabi sen eklemeye çalış olmazsa ben yardımcı olurum
Bir sorum daha olacak. Kaçıncı tahmin’in yanındaki buton mu ? teşekküürler
konu sonunda uygulamnın indirme linki mevcut linkten indirip programı inceleyebilirsiniz..
Çok teşekkürler harika bir site tebrik ederim
teşekkürler iyi çalışmalar…
textboxları falan yerleştirdim ama isimleri karıştı galiba textbox1,2,3,ve 4 resimde hangileri acaba
Hocam peki ,10 yanlış cevap girince, yarışma sona ermiştir şeklinde nasıl yapabiliriz.
private void button1_Click(object sender, System.EventArgs e)
{
if(kacinci<=10)
{
int tahmin, uretilen;
tahmin= Convert.ToInt32(textBox2.Text);
uretilen= Convert.ToInt32(textBox1.Text);
if (tahmin<uretilen)
{
MessageBox.Show(“Üretilen sayı daha BÜYÜK!“);
listBox1.Items.Add(tahmin);
kacinci=kacinci+1;
label4.Text=(kacinci-1).ToString();
}
else if (tahmin>uretilen)
{
MessageBox.Show(“Üretilen sayı daha KÜÇÜK!“);
listBox1.Items.Add(tahmin);
kacinci++;
label4.Text=(kacinci-1).ToString();
}
else //eşitse
{
MessageBox.Show(kacinci.ToString() + “. seferde bildiniz. TEBRİKLER!“);
}
}
else
{
MessageBox.Show("Hakkınız kalmadı malesef tekrar deneyin");
kacinci=1;
Random rsu=new Random();
int sayi;
sayi= rsu.Next(1,51);
textBox1.Text=sayi.ToString();
}
}
şeklinde button1 click olayını değiştirip denersen…
Çok teşekkür ettim hocam , bu kadar hızlı cevap vercegını dusunmuyordum :)
:) şansına bilgisayar başındayım :)
Hocam bu rsuyu public void icinde tanımlasaydınız daha kolay olurdu bence hep kod fazlalıgını azaltmıs olurdunuz
Farklı yöntemlerle illa yapılabilir ama burada en basit temel yollarla anlatmaya çalıştık, ilginiz için teşekkürler
abicim ben bunu anlamadım bu form loada ne yapıyoruz form load leklediğimiz listbox mı bu kodları neyin içine yazcaz
form load olayı için kullanacağınız kodlar
int kacinci = 1;
private void Form1_Load(object sender, System.EventArgs e)
{
Random rsu=new Random(); // Rastgele sayı üretilecek değişken rsu
int sayi;
sayi= rsu.Next(1,51); // 1 ile 50 arasında sayı üretimi.
textBox1.Text=sayi.ToString();
}
diğer bölümde ise button click kodları var listbox’ın içine birşey yazmıyoruz
Programın çalışan halini konu sonundaki linkten indirebilirsiniz, oradan da kontrol edin isterseniz…private void button1_Click(object sender, System.EventArgs e)
{
int tahmin, uretilen;
tahmin= Convert.ToInt32(textBox2.Text);
uretilen= Convert.ToInt32(textBox1.Text);
if (tahminuretilen)
{
MessageBox.Show(“Üretilen sayı daha KÜÇÜK!“);
listBox1.Items.Add(tahmin);
kacinci++;
label4.Text=(kacinci-1).ToString();
}
else //eşitse
{
MessageBox.Show(kacinci.ToString() + “. seferde bildiniz. TEBRİKLER!“);
}
}
bu uygulamada üretilen random sayı ekrana cıkıyor bunun gözükmemesi gerekmez mi ?
evet haklısınız gözükmemesi lazım ama eğitim amaçlı olduğu için sayının kontrolü açısından gözüküyor
gözükmemesi için textbox1 ‘in visible özellğini tasarım alanında false yapıp
MessageBox.Show(kacinci.ToString() + “. seferde bildiniz. TEBRİKLER!“); satırının sonuna textBox1.Visible = true; eklerseniz dediğiniz şekilde olacaktır iyi çalışmalar
çok teşekkür ederim Allah razı olsun.
biz teşekkür ederiz amin cümlemizden :)
iyi çalışmalar…