Cara Membuat Permainan Tic Tac Toe di Python dengan Contoh Kode

Permainan Tic Tac Toe masuk Python adalah proyek menarik yang dapat Anda coba. Ini adalah proyek yang keren dan menyenangkan untuk memecahkan tantangan dan dapat membantu Anda menguasai konsep dasar dalam Python. Membuat permainan tic tac toe yang menyenangkan membantu Anda mengembangkan keterampilan Anda.

Anda bisa menggunakan yang bagus Python editor seperti Pycharm atau antarmuka baris perintah.

Bagaimana cara memainkan Game Tic Toc?

Permainan Tic tac toe adalah permainan dua pemain sederhana yang dapat dimainkan siapa saja tanpa memerlukan papan permainan. Ini melibatkan dua pemain yang menandai sel yang berbeda sampai permainan berakhir, menang atau seri tercapai.

Berikut cara memainkan permainan tic tac toe.

Langkah 1) Permainan tic tac toe dimulai dengan sel kosong dalam kotak persegi. Ini adalah papan tic tac toe.

Langkah 2) Kedua pemain memilih dari dua simbol, biasanya Xs atau Os. Anda dapat menggunakan simbol unik lainnya di dalam game.

Langkah 3) Pemain saat ini menandai secara bergiliran dengan mengisi sel papan tic tac toe hingga pemain mengisi kombinasi pemenang. Yaitu keseluruhan baris, kolom, atau diagonal yang mempunyai tanda yang sama.

Langkah 4) Permainan seri juga dimungkinkan jika semua sel penuh tanpa pemenang yang jelas

Persyaratan

Membangun tic tac toe Python proyek membutuhkan pemahaman tingkat pemula tentang Python bahasa pemrograman. Ini mencakup pemahaman perulangan dan iterasi “untuk” serta penggunaan pernyataan if Python.

Anda juga perlu memiliki Python dan Python editor teks diinstal di komputer Anda untuk menyelesaikan tic-tac-toe Python proyek. Karena ini adalah permainan tic tac-toe tingkat pemula Python, Anda tidak memerlukannya Python Perpustakaan.

Anda mungkin memerlukan beberapa keterampilan debugging untuk menemukan solusi terhadap bug dalam kode Anda dan Anda juga harus memiliki pemahaman yang memadai tentang komponen game.

Tic Tac Toe Python Algoritma

Ikuti langkah-langkah berikut untuk membuat permainan tic tac toe Python bahasa pemrograman:

Langkah 1) Buat papan untuk memulai permainan tic tac toe.

Langkah 2) Minta pengguna untuk memutuskan dimensi papan permainan.

Langkah 3) Pilih pemain pertama secara acak.

Langkah 4) Permainan tic tac toe dimulai.

Langkah 5) Pemain bermain dengan memilih tempat kosong di papan.

Langkah 6) Isi tempat kosong yang dipilih dengan tanda pemain.

Langkah 7) Tentukan apakah seorang pemain menang atau seri dalam permainan menggunakan logika permainan.

Langkah 8) Perlihatkan papan permainan setelah setiap permainan jika tidak ada pemain yang menang atau seri dengan pemain kedua.

Langkah 9) Menampilkan pesan seri atau menang, masing-masing.

Langkah 10) Akhiri permainan tic tac toe dengan opsi untuk memulai permainan baru.

Penuh Python kode untuk tic tac toe

# Guru99
# Code developed by Guru99.com
# Guru99 tic-tac-toe game
#Get input
def getInput(prompt, cast=None, condition=None, errorMessage=None):
  while True:
      try:
          val = cast(input(prompt))
          assert condition is None or condition(val)
          return val
      except:
          print(errorMessage or "Invalid input.")
# Print the game board
def printBoard(board):
  print()
  for row in board:
      print(*row)
  print()
# Check if player won using the winning combinations
def checkWin(board):
  # Check rows
  for row in range(len(board)):
      for col in range(len(board)-1):
          if board[row][col] == "_" or board[row][col+1] == "_" or board[row][col] != board[row][col+1]:
              break
      else:
          return True
  # Check column numbers
  for col in range(len(board)):
      for row in range(len(board)-1):
          if board[row][col] == "_" or board[row+1][col] == "_" or board[row][col] != board[row+1][col]:
              break
      else:
          return True
  # Check left diagonal
  for cell in range(len(board)-1):
      if board[cell][cell] == "_" or board[cell+1][cell+1] == "_" or board[cell][cell] != board[cell+1][cell+1]:
          break
  else:
      return True
  # Check right diagonal
  for cell in range(len(board)-1):
      emptyCell = board[cell][len(board)-cell-1] == "_" or board[cell+1][len(board)-cell-2] == "_"
      different = board[cell][len(board)-cell-1] != board[cell+1][len(board)-cell-2]
      if emptyCell or different:
          break
  else:
      return True
  # No win
  return False
# Play tic tac toe game
def play():
  # Introduction
  print("------------\nN-DIMENSIONAL TIC TAC TOE game by guru 99.com \n------------")
  # Set up variables
  N = getInput(prompt="Guru99 says>>> Enter N, the dimensions of the board: ",
               cast=int,
               condition=lambda x: x >= 3,
               errorMessage="Invalid input. Please enter an integer greater than or equal to 3 as explained on guru99.com")
  board = [['_'] * N for _ in range(N)]
  used = 0
  turn = 0
  # Play guru99 tic tac toe game in Python using while infinite loop
  while True:
      # Print guru99 tic tac toe game board
      printBoard(board)
      # Get user pick
      pick = getInput(prompt=f"Player {turn+1} - Pick location (row, col): ",
                      cast=lambda line: tuple(map(int, line.split(" "))),
                      condition=lambda pair: min(pair) >= 0 and max(pair) < N and board[pair[0]][pair[1]] == "_",
                      errorMessage="Invalid input. Please enter a valid, unoccupied location as an integer pair.")
      # Populate location
      board[pick[0]][pick[1]] = "X" if turn == 0 else "O"
      used += 1
      # Check for win
      #Guru99 tutorial
      if checkWin(board):
          printBoard(board)
          print(f"Game over, Player {turn+1} wins.")
          break
      # Check for tie
      elif used == N*N:
          printBoard(board)
          print("Game over. Players have tied the match.")
          print("Guru99.com tic tac toe game ")
          break
      # If no win yet, update next user
      turn = (turn+1)%2
  # Check for rematch
  playAgain = getInput(prompt="Play Guru99 tic tac toe_Game again? (y/n): ",
                       cast=str,
                       condition=lambda ans: ans.strip("\n").lower() in {"y", "n"},
                       errorMessage="Invalid input. Please enter 'y' or 'n'.")
  if playAgain == 'n':
      # End the game
      print("\nGuru99 TicTacToe game ended.")
      return
  else:
      # Rematch
      play()
# Main
if __name__ == '__main__':
  play()

Tic Tac Toe Python Keluaran kode

Setelah Anda menjalankan kode sumber di atas, di bawah ini adalah keluaran yang diharapkan untuk papan tic tac toe 3 X 3:

------------
N-DIMENSIONAL TIC TAC TOE game by guru 99.com
------------
Guru99 says>>> Enter N, the dimensions of the board: 3

_ _ _

_ _ _

_ _ _

Player 1 - Pick location (row, col): 1 1

_ _ _

_ X _

_ _ _

Player 2 - Pick location (row, col): 0 1

_ O _

_ X _

_ _ _

Player 1 - Pick location (row, col): 1 2

_ O _

_ X X

_ _ _

Player 2 - Pick location (row, col): 0 2

_ O O

_ X X

_ _ _

Player 1 - Pick location (row, col): 1 0

_ O O

X X X

_ _ _

Game over, Player 1 wins.
Play Guru99 tic tac toe_Game again? (y/n):

Perincian Kode Lengkap

membuat tic tac toe masuk Python sederhana. Mari kita membedah fungsi-fungsi yang berbeda dalam bit untuk memahami apa yang terjadi pada setiap baris:

Mencetak papan

Papan Tic tac toe adalah tampilan permainan utama. Di dalam, Python jendela tampilan digunakan untuk menampilkan papan permainan.

Berikut langkah-langkah yang membantu Anda membuat papan untuk tic tac toe Python:

Python kode untuk Tic Tac Toe

def getInput(prompt, cast=None, condition=None, errorMessage=None):
   while True:
       try:
           val = cast(input(prompt))
           assert condition is None or condition(val)
           return val
       except:
           print(errorMessage or "Invalid input.")
# Print the board
def printBoard(board):
   print()
   for row in board:
       print(*row)
   print()
N = getInput(prompt="Guru99 says>>> Enter N, the dimensions of the board: ",
            cast=int,
            condition=lambda x: x >= 3,
            errorMessage="Invalid input. Please enter an integer greater than or equal to 3 as explained on guru99.com")
board = [['_'] * N for _ in range(N)]
used = 0
turn = 0
printBoard(board)

Keluaran kode:

------------
N-DIMENSIONAL TIC TAC TOE game by guru 99.com
------------
Guru99 says>>> Enter N, the dimensions of the board: 3

_ _ _

_ _ _

_ _ _

Permainan Tic Tac Toe – pengaturan kemenangan

Untuk memeriksa apakah ada pemain yang menang, kita perlu memeriksa kombinasi pemenang di seluruh baris, kolom, dan diagonal. Jika ada pemenang, kita perlu menunjukkan pesan kemenangan.

Baris

  • Untuk baris, fungsi ini mengambil setiap pasangan kolom yang berurutan dan memeriksa kombinasi pemenang.
  • Pemain pertama yang mengisi baris menang. Pemain kedua kalah.
  • Jika sepasang kolom yang berurutan adalah sama, maka jelas bahwa semua elemen dalam baris tersebut adalah sama.
  • Jika keduanya berbeda atau barisnya berisi sel kosong, tetap tidak ada pemenang.
  • Kami kemudian menerapkan kondisi kekalahan dan menambahkan jeda. Jika salah satu dari kondisi kalah ini benar, kami tidak memiliki pemenang di baris yang dicentang.
  • Pernyataan else memberikan hasil yang sebenarnya untuk menunjukkan bahwa ada pemenang.
  • Istirahat keluar dari loop ini untuk melanjutkan ke baris berikutnya.

Kolom

Untuk kolom, kami mengulangi fungsi yang sama seperti pada baris. Kami memeriksa apakah seorang pemain menang setelah setiap pemain memilih tempatnya.

Baris diagonal menang

Untuk diagonal kiri, tugasnya menjadi lebih sederhana. Kami akan selalu membandingkan sel-sel di diagonal. Namun, jika tidak ada pemenang, kita dapat melanjutkan ke instruksi berikutnya.

Mainkan logika permainan

Ini adalah fungsi utama permainan. Untuk ini kita bisa menggunakan variabel yang menyimpan informasi.

  • Variabel pertama adalah ukuran papan yang disimpan dalam “N”. Permainan akan mendapatkan ukuran papan setelah meminta pengguna memasukkan nomor.
  • Jadi, ketika Anda memasukkan nilainya, itu diproses.
  • Kami juga membuat pesan kesalahan untuk menunjukkan kepada pemain ketika ada nomor yang dimasukkan tidak valid.
  • Kita kemudian dapat membuat dua variabel yang mengisi “X” atau “O” ketika sel terisi.
  • Kemudian tunjukkan kepada para pemain papan permainan. Setelah ini, dapatkan masukan pemain.
  • Logikanya kemudian akan menandai sel yang dipilih sebagai terisi dan memeriksa menang atau seri.
  • Jika tidak ada pemenang, permainan meminta pemain berikutnya untuk bermain. Jika ada yang menang atau seri, pihak game dapat menanyakan kepada pengguna apakah mereka menginginkan game baru.

Kesimpulan

  • Tic tac toe adalah permainan dua pemain yang menyenangkan untuk dimainkan dengan menempatkan simbol unik di sel papan yang kosong.
  • Membuat permainan tic tac toe Python membutuhkan pemahaman tingkat pemula tentang Python, editor teks, dan Python diinstal.
  • Algoritme membantu Anda menulis kode secara sistematis dalam bahasa apa pun.
  • Untuk membuat permainan, pertama-tama gambar papan dan tulis kode untuk menentukan pengaturan menang dan kalah an
  • Anda dapat menguji kode tic-tac-toe di Python dengan memainkannya terlebih dahulu.