Resim

Sayı Tahmin Oyunu

Sayı Tahmin Oyunu

Merhaba kodlama meraklıları!

Yazılıma başlamanın en heyecan verici kısmı, öğrendiklerimizi somut bir şeye dönüştürmektir. Bugün, Python'ın temel yapılarını kullanarak yalnızca 15-20 satırda tamamlayabileceğiniz klasik bir oyun olan Sayı Tahmin Oyunu'nu birlikte kodlayacağız.

Bu mini proje ile;

  • Rastgele sayı üretmeyi,

  • Sınırsız döngüleri (while),

  • Koşullu mantığı (if, elif, else)

pratik yaparak öğreneceksiniz. Hazırsanız başlayalım!

💻 Python Kodu: Sayı Tahmin Oyunu

Bu kodu bir dosyaya kaydedip (örneğin: tahmin_oyunu.py) terminalden çalıştırabilirsiniz.

import random
# 1. Ayarlar: Oyunun oynanacağı aralığı belirle
alt_sinir = 1
ust_sinir = 100
# 2. Rastgele Sayı Üretimi: Bilgisayarın tuttuğu sayıyı belirle
tutulan_sayi = random.randint(alt_sinir, ust_sinir)
# 3. Sayacı Başlat: Kullanıcının kaç tahminde bulunduğunu takip etmek için
tahmin_sayisi = 0
print("-" * 50)
print(f"Sayı Tahmin Oyununa Hoş Geldiniz!")
print(f"{alt_sinir} ile {ust_sinir} arasında bir sayı tuttum. Hadi bul!")
print("-" * 50)

# 4. Oyun Döngüsü: Tahmin doğru olana kadar oyunu sürdür
while True:
    try:
        # Kullanıcıdan girdi al
        kullanici_tahmini = int(input("Tahmininiz (Sayı girin): "))
        tahmin_sayisi += 1

    except ValueError:
        # Hata Yönetimi: Kullanıcı sayı yerine harf girerse
        print("Geçersiz giriş! Lütfen bir tam sayı girin.")
        continue # Döngünün başına dön

    # 5. Koşul Kontrolü: Tahmini değerlendir
    if kullanici_tahmini < alt_sinir or kullanici_tahmini > ust_sinir:
        print(f"Lütfen {alt_sinir} ile {ust_sinir} arasında bir sayı giriniz.")

    elif kullanici_tahmini < tutulan_sayi:
        print("Yukarı! Daha büyük bir sayı tahmin edin.")

    elif kullanici_tahmini > tutulan_sayi:
        print("Aşağı! Daha küçük bir sayı tahmin edin.")

    else:
        # 6. Başarı Durumu: Tahmin doğruysa
        print("*" * 50)
        print(f"Tebrikler! Sayıyı {tahmin_sayisi} tahminde buldunuz: {tutulan_sayi}")
        print("*" * 50)
        break # Döngüden çık ve oyunu bitir

📝 Kodun Adım Adım Açıklaması (Blog İçeriği)

Bu proje, bir yazılımcının en çok kullandığı üç temel aracı birleştirir: Modüller, Döngüler ve Koşullu İfadeler.

Adım 1: Gerekenleri İçe Aktarma (import random)

import random
  • random modülü: Python'da rastgele sayılar, harfler veya öğeler seçmek için kullanılan yerleşik bir kütüphanedir. Bu modülü içe aktararak, bilgisayarın tahmin etmesi gereken sayıyı üretmesini sağladık.

  • random.randint(a, b): Bu fonksiyon, $a$ ve $b$ dahil olmak üzere bu aralıkta rastgele bir tam sayı üretir.

Adım 2: Sonsuz Döngü (while True)

while True:
    # ... kodlar ...
    if tahmin doğruysa:
        break # Sadece bu koşulda döngü kırılır
  • Oyunun, kullanıcı doğru tahmini yapana kadar devam etmesini istiyoruz. while True komutu, koşulsuz ve sonsuza kadar devam eden bir döngü oluşturur.

  • Döngüyü durdurmak için, doğru tahmin yapıldığında break komutunu kullandık.

Adım 3: Kullanıcıdan Girdi Alma ve Hata Yönetimi

try:
    kullanici_tahmini = int(input("Tahmininiz (Sayı girin): "))
except ValueError:
    print("Geçersiz giriş! Lütfen bir tam sayı girin.")
    continue
  • input(): Kullanıcının terminalden metin girmesini sağlar.

  • int(): Gelen metni tam sayıya çevirmeye çalışır.

  • try/except: Kullanıcı yanlışlıkla sayı yerine harf girdiğinde programın çökmesini önler. Bu, yazılımda hata yakalama (Error Handling) olarak bilinir. Yanlış giriş olursa, continue komutu döngüyü yeniden başlatır.

Adım 4: Koşullu Mantık (if, elif, else)

Oyunun kalbi burasıdır. Kullanıcının tahminini bilgisayarın tuttuğu sayı ile karşılaştırırız:

  • elif kullanici_tahmini < tutulan_sayi:: Eğer tahmin tutulan sayıdan küçükse, kullanıcıya "Yukarı!" deriz.

  • elif kullanici_tahmini > tutulan_sayi:: Eğer tahmin tutulan sayıdan büyükse, kullanıcıya "Aşağı!" deriz.

  • else:: Eğer önceki iki koşul da sağlanmazsa, geriye tek bir ihtimal kalır: Tahmin doğru demektir! Oyunu tebrik mesajıyla bitiririz.

Bu basit proje, Python ile yapabileceklerinizin sadece başlangıcıdır. Şimdi sıra sizde! Kodu çalıştırın ve kendi oyununuzu oynayın. Kodunuzu geliştirmeyi (örneğin, oyuncuya kaç hakkı kaldığını söylemeyi) deneyerek öğrenmeye devam edin!

Yorumlar

Bu blogdaki popüler yayınlar

Python random Modülü

Python print()

Yazılım Nedir?