Merhaba arkadaşlar bugün Python ile amiral battı oyunu yapıyoruz. Oyun alanımızı board adı ile bir liste olarak tanımlıyoruz. 5×5 şeklinde bir matris oluşturuyorz. 3 adet gemi belirliyoruz. Bunların konumlarını randint fonksiyonu ile belirliyoruz. Satır ve sütun için rastgele sayılar alıyoruz. Ardından gemilerin konumlarının aynı olup olmadığını kontrol ediyoruz. Eğer konumları ayrı ise bir geminin konumu değiştiriyoruz. Ardından kullanıcının girdiği değerler ile gemilerin konumunu karşılaştırıyoruz ve durumlarını yazıyoruz.
from random import randint board = [] sayac = 0 puan = 250 for i in range(5): board.append(["0"]*5) def print_board(board): for satir in board: print (" ".join(satir)) def rand(board): return randint(1,len(board)-1) print("-" * 35) print("Amiral battı oyununa hoş geldiniz") print("-" * 35) print("Puanınız:", puan) print("-" * 35) print_board(board) gemi_satir = rand(board) gemi_sutun = rand(board) gemi1_satir = rand(board) gemi1_sutun = rand(board) gemi2_satir = rand(board) gemi2_sutun = rand(board) while True: if(gemi_satir == gemi1_satir and gemi_sutun == gemi1_sutun): gemi1_satir = rand(board) gemi1_sutun = rand(board) continue elif (gemi_satir == gemi2_satir and gemi_sutun == gemi2_sutun): gemi2_satir = rand(board) gemi2_sutun = rand(board) continue elif (gemi1_satir == gemi2_satir and gemi1_sutun == gemi2_sutun): gemi2_satir = rand(board) gemi2_sutun = rand(board) continue else: print("-" * 35) tahmin_satir = int(input("Satır giriniz: ")) tahmin_sutun = int(input("Sütun giriniz: ")) if (tahmin_satir == gemi_satir and tahmin_sutun == gemi_sutun)\ or (tahmin_satir == gemi1_satir and tahmin_sutun == gemi1_sutun) \ or (tahmin_satir == gemi2_satir and tahmin_sutun == gemi2_sutun): if board[tahmin_satir - 1][tahmin_sutun - 1] == "/": print("-" * 35) print("Zaten tahmin ettiniz") print_board(board) print(puan) else: print("-" * 35) print("Tebrikler gemiyi batırdınız!") board[tahmin_satir - 1][tahmin_sutun - 1] = "/" print("Puanınız:",puan) print("-" * 35) print_board(board) sayac += 1 else: if (tahmin_satir < 0 or tahmin_sutun < 0) or (tahmin_satir >5 or tahmin_sutun >5): print("-" * 35) print("Alan sınırları dışında değer girdiniz") elif board[tahmin_satir - 1][tahmin_sutun - 1] == "X": print("-" * 35) print("Zaten tahmin ettiniz") print("-" * 35) print_board(board) else: print("-" * 35) print("Vuramadınız") board[tahmin_satir - 1][tahmin_sutun - 1] = "X" puan -= 10 print("Puanınız:", puan) print("-" * 35) print_board(board) if sayac == 3: print("-" * 35) print("Tebrikler bütün gemileri batırdınız ve oyunu kazandınız") print("-" * 35) break
Merhaba, Python Yeni Başlayanlar İçin Örnek Projeler yazınız altında gösterilen bütün örnek projelerde girdilerde sıkıntı var. Özellikle yeni başlayanları hedefleyen bir yazıda böyle bir hatanın büyük bir sıkıntı oluşturacağından söyleme ihtiyacı duydum.
Sitede yaptığımız düzenleme sonucu bozulmuş kodlar. Şu an sorun halledildi. Yorumunuz için teşekkürler.
biraz gelecekten yazıyorum ama bir sorum olucak ben bu kodları yazdım ama çalıştırdığımda herhangi birşey olmuyor python hakkında nerdeyse hiç bilgim yok etkileşimli bir pencerede nasıl çalıştırıcağım bunu yardımcı olurmusunuz
Biraz geç olacak ama file bölümünden new file’a tıkla. Buradaki kodları yapıştır. Sonra f5 yap veya run bölümündeki run module ‘a tıkla. Belki hata verebilir boşluklardan dolayı, onları düzenle ve tekrar run module yap. Sonrasında kaydet ve kodların çalıştığını göreceksin.