Form application tahmin oyunu programı

34YunusEmre

Decapat
Katılım
8 Ocak 2019
Mesajlar
34
Şimdi 0 ile 100 arası rastgele sayı üreten bir sayıyı, 10 hak vererek aşağı yukarı yönlendirmeyle kaç kerede tahmin ettiğini gösteren bir tahmin oyunu yapmaya çalıştım. For döngüsü ve while ile denedim ama olmadı. Hak kısmında sürekli 1 hakkın kaldı diyor.
 
Önceki tahmine kullanıcı "arttır" derse, rastgele sayının, önceki tahminden yüksek olup olmadığını kontrol edip, eğer yüksekse kullanıcıya sayıyı sorabilirsiniz. Kontrol aşamasını while döngüsü ile yapmalısınız ve bu while döngüsünden çıkış şartı sayının önceki tahminden büyük veya küçük olduğuna bağlı olacak. C# bilgim yok ama isterseniz C kodunu yazabilirim.
 

Dosya Ekleri

  • Ekran Alıntısı.PNG
    21,1 KB · Görüntüleme: 88
  • Ekran Alıntısı.PNG
    21,1 KB · Görüntüleme: 63
Bu şekilde sürekli sayıyor nerede hata yaptım bulamadım.
Sıkıntı şu ki, siz muhtemelen bu kodu bir konsol uygulaması örneğine bakarak yaptınız ama sizin uygulamanız form uygulaması. Eğer butona bastıkça giriş almasını istiyorsanız while kullanmaya gerek yok, şu an yazdığınız kod bir kerede çalışıp bitiyor çünkü ReadLine() gibi kullanıcıdan girdi bekleyen bir şey yok.

Oradan while döngüsünü çıkartın, ayrıca tahmin = Convert.ToInt32(textBox1.Text); satırından sonraki hak--; ifadesini kaldırın. Zaten her bloğun içinde azaltıyorsunuz, o orada olmamalı.

Ayrıca kodu bu şekilde paylaşırsanız daha iyi olur:
 

http://
Bu şekilde yaptım ama hakkı azaltmıyor 10 hakkınız kaldı diyor

Kod:
Random rasgele = new Random();

        private void button1_Click(object sender, EventArgs e)
        {
            int tahmin, sayi = rasgele.Next(100);
            int hak = 10;

            label3.Text = ("\n \n" + hak + "Hakkınız var.");
            if (hak<0)
            {
                label3.Text=("KAYBETTİNİZ...");
            }
            tahmin = Convert.ToInt32(textBox1.Text);
            if (tahmin==sayi)
            {
                MessageBox.Show("TEBRİKLER BİLDİNİZ...");
                hak--;
            }
            else if (tahmin < sayi)
            {
                label5.Text = ("Daha BÜYÜK bir sayi giriniz...");
                hak--;
            }
            else
            {
                label5.Text = ("Daha KÜÇÜK bir sayi giriniz...");
                hak--;
            }
 
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için çerezleri kabul etmelisiniz. Daha Fazlasını Öğren.…