Python projeleri serimizde kademe kademe her paylaştığımız bir öncekinden daha detaylı olan projeler paylaşmaya devam ediyoruz. Bu projeler sayesinde kendinizi geliştirebilir ve algoritma mantığını daha iyi bir şekilde kavrayabilirsiniz.
Python ile Bulundu Yerinde Oyunu
Şimdi de sizlerle python programlama dili ile yazılmış basit bir oyun olan bulundu yerinde oyununu paylaşmak istiyorum.
Bulundu Yerinde Oyunu Nedir?
Bulundu yerinde oyunu aslında bir sayı tahmin etme oyunudur. Bu oyun iki kişi ile oynanır ve siz bu oyunu bilgisayarla oynayacaksınız.
- Bilgisayar 4 basamaklı rakamları farklı bir sayı belirleyecek. (0 başta olabilir.)
- Siz ise deneme yanılma yöntemiyle bu 4 basamaklı sayıyı tahmin etmeye çalışacaksınız.
Bu görsel oyunu anlamak için örnektir.
Sayıyı bulana kadar programın sürekli çalışması gerekecek yani döngüleri kullanmamız gerekiyor. Eğer döngü kullanmazsak sayıyı tahmin edemesek bile her yazdığımız 4 sayıdan sonra program duracak ve sürekli tekrar başlatmamız gerekecekti. Bu yöntem de pek doğru sayılmaz.
Python – Rastgele Sayı Üretme
Bu oyunda bilgisayar 4 basamaklı rakamları farklı rastgele bir sayı üretecek bu yüzden random modülünü kullanmamız gerekiyor.
Python programlama dilinde program yazarken belirli bir aralıkta rastgele sayı üretmek için “random” modülü kullanılır. random modülünün işlevlerinden faydalanabilmek için projeye dahil edilmesi gerekmektedir. Bu işlemi aşağıdaki şekilde yapabiliriz.
import random
randint()
Random modülünü kullandık ve ne olduğunu açıkladık. Programımızda random modülünün randint() fonksiyonunu kullandığımız için bunun da ne olduğunu açıklamak istedim.
Belirli bir aralıkta tam sayı üretmek için kullanılan fonksiyondur. 2 parametre alır. Başlangıç ve bitiş değeri olarak girilen sayılar arasında rastgele sayı tutar.
Bulundu Yerinde Oyununun Kodları
import random n = 4 bulundu = 0 yerinde = 0 b = True while b == True: r = random.randint(1000, 9999) rstr = str(r) b = False for i in range(0, n - 1): for j in range(i + 1, n): if rstr[i] == rstr[j]: b = True print("oyun başladı. uyuma...") cikis = "0000" tstr = "" while tstr != cikis: b = True while b == True: tstr = input("tahmininiz giriniz. (0000-oyundan çıkar) :") if tstr == cikis: print("üzgünüm kaybettiniz...") print("tuttuğum sayı", rstr, "idi.") tstr = cikis break if tstr != cikis: b = False for i in range(0, n - 1): for j in range(i + 1, n): if tstr[i] == tstr[j]: b = True if b == True: print("girilen sayının rakamları farklı olmalıdır...") if tstr != cikis: bulundu = 0; yerinde = 0 for i in range(n): if rstr.find(tstr[i]) > -1: bulundu += 1 if rstr[i] == tstr[i]: yerinde += 1 print(bulundu, "tane bulundu...") print(yerinde, "tane yerinde...") if yerinde == n: print("tebrikler oyunu kazandınız...") tstr = cikis
Anlamadığınız kısımları yorumlara yazabilirsiniz. Veya discord üzerindeki topluluğumuza katılarak oradan da sorabilirsiniz.