19 Şubat 2017 Pazar

Csharp'ta Random Sayıyı Tahmin Etme Oyunu -39


using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace _15_Sayı_bulma_oyunu__do_while_ { internal class Program { private static void Main(string[] args) { start: int? tahmin = null; string again = null; int denenen = 0; Random rnd = new Random(); Console.WriteLine("Sayı Bulma Oyununa hoşgeldiniz. Sistem 1-100 arası bir sayı seçti!"); do { int random = rnd.Next(1, 100); // Next ile rastgele bir sayı belirledik ve bu sayıyı random değişkenine attık. do { Console.Write("Bir tahminde bulunun : "); tahmin = int.Parse(Console.ReadLine()); if (tahmin < random) { Console.WriteLine("Sayı çok küçük. Yukarı!"); denenen++; // oyunu kaçıncı denemede kazandığımızı görebilmek için bu değişkeni atadık. // bu değişkeni de her deneme yaptığımızda 1 artırıyoruz (++ operatörü ile). } else if (tahmin > random) { Console.WriteLine("Sayı cok büyük. Aşağı!"); denenen++; // bu if şartı sağlandığında da 'denenen' değişkenini 1 artırıyoruz. } } while (tahmin < random || tahmin > random); if (tahmin == random) { Console.WriteLine("Bravo! Oyunu {0}. denemede tamamladınız!", denenen + 1); Console.WriteLine("Tekrar oynamak ister misiniz? (evet/hayır)"); denenen = 0; // eğer cevap doğru bilinmişse denenen = 0 yapılsın // şeklinde kodumuzu yazdık. Çünkü kullanıcı ikinci bir oyuna başlarsa; // deneme sayısı tekrar sıfırlanmak zorunda.. Yoksa oyunun en başından // itibaren tüm deneme sayıları; bu yeni başlayan oyunun finalinde // ekrana yazdırılır. Bu ise istemediğimiz bir durumdur. do { again = Console.ReadLine().ToUpper(); if (again == "HAYIR") { Console.WriteLine("Teşekkürler. İyi günler!"); Console.ReadKey(); Environment.Exit(5); } if ((again != "EVET" & again != "HAYIR")) { Console.WriteLine("hatalı giris. Evet veya hayır yazın."); } } while (again != "EVET" & again != "HAYIR"); } } while (again == "EVET"); } } }

Hiç yorum yok:

Yorum Gönder