sudoku solver code

def print_board(board):

    for row in board:

        print(" ".join(map(str, row)))


def is_valid(board, row, col, num):

    # Satır kontrolü

    if num in board[row]:

        return False


    # Sütun kontrolü

    if num in [board[i][col] for i in range(9)]:

        return False


    # Kare kontrolü

    start_row, start_col = 3 * (row // 3), 3 * (col // 3)

    for i in range(start_row, start_row + 3):

        for j in range(start_col, start_col + 3):

            if board[i][j] == num:

                return False


    return True


def solve_sudoku(board):

    for row in range(9):

        for col in range(9):

            if board[row][col] == 0:

                for num in range(1, 10):

                    if is_valid(board, row, col, num):

                        board[row][col] = num

                        if solve_sudoku(board):

                            return True

                        board[row][col] = 0

                return False

    return True


# Sudoku bulmaca örneği (0, boş hücreleri temsil eder)

sudoku_board = [

    [5, 3, 0, 0, 7, 0, 0, 0, 0],

    [6, 0, 0, 1, 9, 5, 0, 0, 0],

    [0, 9, 8, 0, 0, 0, 0, 6, 0],

    [8, 0, 0, 0, 6, 0, 0, 0, 3],

    [4, 0, 0, 8, 0, 3, 0, 0, 1],

    [7, 0, 0, 0, 2, 0, 0, 0, 6],

    [0, 6, 0, 0, 0, 0, 2, 8, 0],

    [0, 0, 0, 4, 1, 9, 0, 0, 5],

    [0, 0, 0, 0, 8, 0, 0, 7, 9]

]


if solve_sudoku(sudoku_board):

    print("Çözüm:")

    print_board(sudoku_board)

else:

    print("Bu sudoku bulmacası çözülemedi.")


Yorumlar

Bu blogdaki popüler yayınlar

THE KULAKLIK

BİZ Mİ TOPU SEÇERİZ YOKSA TOP Mİ BİZİ SEÇER TOPUN İZİNDE 😂

Abu , Labne, Labubu 😅