Not: İstek üzerine oyunun c# kod ve formlarını aşağıdaki linkten indirebilirsiniz. Rar şifresi: paylasimevi.com
http://hotfile.com/dl/136969030/e06aef5/adam-asmaca.rar.html
Merhaba arkadaslar, size c# ile yapilmis ilkögretim yillarinin vazgeçilmez oyunu adam asmaca yi c# ile consol uygulamasi olarak yapimini göstericem. Ben yaparken ve oynarken cok zevk aldim.
Ilk olarak programin hafizasinda tutulacak kelimeleri tanimliyoruz.
string[] kelimeler = {“Abdurrahim”,”Gözde”,”Mustafa”,”Mahmut”,”Hasan”, “Ali”, “Kamil”, “Murat”, “Burak”, “Sezgin”, “Özgür”, “Halit”, “Sefa”, “Berkin”, “Ahmet”, “Oktay”, “Onur”, “Nuri”,”Birgül”,”Bilge”,”Kazim”,”Elif”,”Emine”,”Ezgi”,”Esin”,”Derya”,”Muhteber”,”Gökhan”,”Banu”,”Yagiz”,”Kemal”};
Ardindan Random classinadan bi nesne olusturup bu nesneye rastgele bi deger atayoruz atanan bu deger ile kelimeler dizisinden eleman seçicez…
Random rastgele = new Random();
string tutulan_Kelime = kelimeler[rastgele.Next(0, 30)];
string[] kelime = new string[tutulan_Kelime.Length]; // kelime isimli string dizi olusturuyoruz.
for (int k = 0; k < tutulan_Kelime.Length; k++) //kelime dizisinin eleman sayisi kadar dönecek döngü kurup dizinin her bir elemanina “_” degerini veriyoruz.
{ kelime[k] = “_”.ToString(); }
Kullanicidan harf istiyoruz, ekrani temizleyip programin gövde, sorgulama isleminin yapilacagi bölüme geçiyoruz.
Console.Write(“\nHarf Girin: “);
string harf = Convert.ToString(Console.ReadLine());
Console.Clear();
Alt tarafi açiklama satirlari ile anlatmaya çalisacagim…
for (int i = 0; i < 10; i++) // Kullaniciya 10 hak tanidigimiz için 10 kez dönecek bi döngü tanimliyoruz.
{
int adet = 0;
for (int z = 0; z < tutulan_Kelime.Length; z++)
{
if (kelime[z] == “_”) // kelime dizisinde bulunan “_” lerin sayisini adet degiskenine atiyoruz.
{
adet++;
}
}
for(int d=0;d < tutulan_Kelime.Length;d++)
{
if (tutulan_Kelime[d].ToString() == harf.ToString() || tutulan_Kelime[d].ToString() == harf.ToLower() || tutulan_Kelime[d].ToString() == harf.ToUpper())
{
kelime[d] = harf.ToString();
–adet;
}
}
/* Yukarida kullanicinin girdigi harfin büyük halinin veya küçük halinin programin hafizasindaki kelimede olup olmadigini kontrol ediyoruz.Harf tutulan kelimede var ise harfin bulundugu index e girilen harfi atiyacak. Eger “ToUpper()” veya “ToLower()” deyimlerini kullanmasaydik kullanicinin girdigi harf büyükse ve programin hafizasindaki harf küçükse yanlis girildi diyerek ekrana yazmayacakti o harfi */
for (int d = 0; d < tutulan_Kelime.Length; d++)
{
Console.Write(” ” + kelime[d].ToString()); //ekrana kelime dizisini yazdiriyoruz.
}
if (adet != 0)
{
Console.WriteLine(“\n\nKalan sakli harf sayisi:{0}, Kalan Hakkiniz:{1} “, adet, vhy);
Console.Write(“\nHarf Girin: “);
harf = Convert.ToString(Console.ReadLine());
vhy- -;
Console.Clear();
}
/* yukarida dizide bulunan “_” lerin sayisini bi degiskene atamistik buradada o degiskeni kontrol ediyoruz.degiskenin degeri 0 degilse yani kelime dizisinde “_” varsa program tekrar harf istiyor. Eger 0 ise tebrik edip programi kapatiyor.*/
else if (adet == 0)
{
Console.Clear();
Console.Write(“Tebrik ederim basardin!\n\nÇikmak için bir tusa basiniz…”);
Console.ReadKey();
return;
}
}
// Kullaniciya taninan hak bittigi zaman üzgünüm diyerek program yapatiliyor.
Console.Clear();
Console.Write(“Üzgünüm Malesef basaramadin…\n\nÇikmak için bir tusa basiniz…”);
Console.ReadLine();
Program böyleydi arkadaslar alt tarafta ile programin tüm kodlarini birlikde verdim. Umarim yararli olmustur.
Console.Title = “Kelime Oyunu”;
string[] kelimeler = {“Abdurrahim”,”Gözde”,”Mustafa”,”Mahmut”,”Hasan”, “Ali”, “Kamil”, “Murat”, “Burak”, “Sezgin”, “Özgür”, “Halit”, “Sefa”, “Berkin”, “Ahmet”, “Oktay”, “Onur”, “Nuri”,”Birgül”,”Bilge”,”Kazim”,”Elif”,”Emine”,”Ezgi”,”Esin”,”Derya”,”Muhteber”,”Gökhan”,”Banu”,”Yagiz”,”Kemal”}; // Programda kullanilacak Isimleri Belirliyoruz.
Random rastgele = new Random(); // Random class indan bi nesne belirliyoruz.
string tutulan_Kelime = kelimeler[rastgele.Next(0, 30)]; // rastgele nesnesine 0 ile 30 arasi bi sayiyi rastgele seçtiriyoruz.
int vhy = 10;
Console.Write(“Programin hafizasindaki isim {0} harfli\n”, tutulan_Kelime.Length); // ekrana kelimenin harf sayisini yazdiriyoruz.
string[] kelime = new string[tutulan_Kelime.Length]; // kelime isimli string dizi olusturuyoruz.
for (int k = 0; k < tutulan_Kelime.Length; k++) //kelime dizisinin eleman sayisi kadar dönecek döngü kurup dizinin her bir elemanina “_” degerini veriyoruz.
{ kelime[k] = “_”.ToString(); }
Console.Write(“\nHarf Girin: “);
string harf = Convert.ToString(Console.ReadLine());
Console.Clear();
// Harf isteyip ekrani temizliyoruz ve programin asil çalisacagi bölüme geliyoruz.
for (int i = 0; i < 10; i++) // Kullaniciya 10 hak tanidigimiz için 10 kez dönecek bi döngü tanimliyoruz.
{
int adet = 0;
for (int z = 0; z < tutulan_Kelime.Length; z++)
{
if (kelime[z] == “_”) // kelime dizisinde bulunan “_” lerin sayisini adet degiskenine atiyoruz.
{
adet+ +;
}
}
for(int d=0;d<tutulan_Kelime.Length;d++)
{
if (tutulan_Kelime[d].ToString() == harf.ToString() || tutulan_Kelime[d].ToString() == harf.ToLower() || tutulan_Kelime[d].ToString() == harf.ToUpper())
{
kelime[d] = harf.ToString();
–adet;
}
}
/* Yukarida kullanicinin girdigi harfin büyük halinin veya küçük halinin programin hafizasindaki kelimede olup olmadigini kontrol ediyoruz.Harf tutulan kelimede var ise harfin bulundugu index e girilen harfi atiyacak. Eger “ToUpper()” veya “ToLower()” deyimlerini kullanmasaydik kullanicinin girdigi harf büyükse ve programin hafizasindaki harf küçükse yanlis girildi diyerek ekrana yazmayacakti o harfi */
for (int d = 0; d < tutulan_Kelime.Length; d++)
{
Console.Write(” ” + kelime[d].ToString()); //ekrana kelime dizisini yazdiriyoruz.
}
if (adet != 0)
{
Console.WriteLine(“\n\nKalan sakli harf sayisi:{0}, Kalan Hakkiniz:{1} “, adet, vhy);
Console.Write(“\nHarf Girin: “);
harf = Convert.ToString(Console.ReadLine());
vhy- -;
Console.Clear();
}
/* yukarida dizide bulunan “_” lerin sayisini bi degiskene atamistik buradada o degiskeni kontrol ediyoruz.degiskenin degeri 0 degilse yani kelime dizisinde “_” varsa program tekrar harf istiyor. Eger 0 ise tebrik edip programi kapatiyor.*/
else if (adet == 0)
{
Console.Clear();
Console.Write(“Tebrik ederim basardin!\n\nÇikmak için bir tusa basiniz…”);
Console.ReadKey();
return;
}
}
// Kullaniciya taninan hak bittigi zaman üzgünüm diyerek program yapatiliyor.
Console.Clear();
Console.Write(“Üzgünüm Malesef basaramadin…\n\nÇikmak için bir tusa basiniz…”);
Console.ReadLine();