{"id":3046,"date":"2024-10-14T16:11:59","date_gmt":"2024-10-14T14:11:59","guid":{"rendered":"https:\/\/fahrtauglich.ch\/?page_id=3046"},"modified":"2025-02-06T12:57:58","modified_gmt":"2025-02-06T11:57:58","slug":"sudoku","status":"publish","type":"page","link":"https:\/\/fahrtauglich.ch\/fr\/praxisportal\/sudoku\/","title":{"rendered":"Sudoku"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"3046\" class=\"elementor elementor-3046\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-279daf0 e-flex e-con-boxed e-con e-parent\" data-id=\"279daf0\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-2f5d06c elementor-widget elementor-widget-heading\" data-id=\"2f5d06c\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h1 class=\"elementor-heading-title elementor-size-default\">Sudoku<\/h1>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1f2f64f elementor-widget elementor-widget-html\" data-id=\"1f2f64f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<!DOCTYPE html>\r\n<html lang=\"de\">\r\n<head>\r\n    <meta charset=\"UTF-8\">\r\n    <title>Sudoku<\/title>\r\n    <style>\r\n        .sudoku-app {\r\n            max-width: 600px;\r\n            margin: auto;\r\n            text-align: center;\r\n            font-family: Arial, sans-serif;\r\n            font-weight: bold;\r\n        }\r\n\r\n        .control-panel {\r\n            margin: 20px 0;\r\n        }\r\n\r\n        .sudoku-grid {\r\n            display: grid;\r\n            grid-template-columns: repeat(9, 50px);\r\n            gap: 0;\r\n            justify-content: center;\r\n            margin: 20px auto;\r\n        }\r\n\r\n        .sudoku-cell {\r\n            width: 50px;\r\n            height: 50px;\r\n            background-color: #f0f0f0;\r\n            display: flex;\r\n            align-items: center;\r\n            justify-content: center;\r\n            border: 1px solid #bdbdbd;\r\n            position: relative;\r\n        }\r\n\r\n        \/* Add bold lines for 3x3 grid boundaries *\/\r\n        .sudoku-cell {\r\n            border: 1px solid #bdbdbd;\r\n        }\r\n\r\n        .sudoku-cell:nth-child(3n+1) {\r\n            border-left: 3px solid #3b3b3b;\r\n        }\r\n\r\n        .sudoku-cell:nth-child(9n) {\r\n            border-right: 3px solid #3b3b3b;\r\n        }\r\n\r\n        .sudoku-cell:nth-child(-n+9) {\r\n            border-top: 3px solid #3b3b3b;\r\n        }\r\n\r\n        .sudoku-cell:nth-child(n+73) {\r\n            border-bottom: 3px solid #3b3b3b;\r\n        }\r\n\r\n        \/* Add horizontal bold lines for every 3 rows *\/\r\n        .sudoku-cell:nth-child(n+19):nth-child(-n+27),\r\n        .sudoku-cell:nth-child(n+46):nth-child(-n+54) {\r\n            border-bottom: 3px solid #3b3b3b;\r\n        }\r\n\r\n        .sudoku-cell input {\r\n            width: 100%;\r\n            height: 100%;\r\n            text-align: center;\r\n            border: none;\r\n            font-size: 20px;\r\n            font-weight: bold;\r\n            background-color: transparent;\r\n            color: grey;\r\n            cursor: pointer;\r\n            padding: 0;\r\n            margin: 0;\r\n        }\r\n\r\n        \/* Style for initial numbers *\/\r\n        .sudoku-cell input.initial-cell {\r\n            color: black;\r\n            cursor: default;\r\n        }\r\n\r\n        .sudoku-cell input.solution-cell {\r\n            background-color: #d3d3d3 !important;\r\n        }\r\n\r\n        .sudoku-cell input.wrong-cell {\r\n            background-color: #ffcccc !important;\r\n        }\r\n\r\n        button {\r\n            padding: 15px 25px;\r\n            font-size: 18px;\r\n            cursor: pointer;\r\n            background-color: #FFBE00;\r\n            color: #000;\r\n            border: none;\r\n            border-radius: 4px;\r\n            margin: 8px;\r\n            transition: background-color 0.3s ease;\r\n            font-weight: bold;\r\n        }\r\n\r\n        button:hover {\r\n            background-color: #e6a700;\r\n        }\r\n\r\n        button:disabled {\r\n            background-color: #cfd8dc;\r\n            cursor: not-allowed;\r\n        }\r\n\r\n        .button-selected {\r\n            background-color: #e6a700;\r\n        }\r\n\r\n        .timer {\r\n            margin-top: 10px;\r\n            font-weight: bold;\r\n        }\r\n\r\n        .start-button-container {\r\n            margin-top: 20px;\r\n        }\r\n\r\n        \/* Modal styles *\/\r\n        .modal {\r\n            display: none;\r\n            position: fixed;\r\n            z-index: 1;\r\n            left: 0;\r\n            top: 0;\r\n            width: 100%;\r\n            height: 100%;\r\n            overflow: auto;\r\n            background-color: rgba(0,0,0,0.4);\r\n        }\r\n\r\n        .modal-content {\r\n            background-color: #fefefe;\r\n            margin: 15% auto;\r\n            padding: 20px;\r\n            border: 1px solid #888;\r\n            width: auto;\r\n            max-width: 600px; \/* Match Sudoku grid width *\/\r\n            text-align: center;\r\n        }\r\n\r\n        \/* Mobile Adjustments *\/\r\n        @media (max-width: 768px) {\r\n            .sudoku-grid {\r\n                grid-template-columns: repeat(9, 30px);\r\n                gap: 0;\r\n            }\r\n\r\n            .sudoku-cell {\r\n                width: 30px;\r\n                height: 30px;\r\n            }\r\n\r\n            .sudoku-cell input {\r\n                font-size: 14px;\r\n            }\r\n\r\n            button {\r\n                padding: 8px 15px;\r\n                font-size: 14px;\r\n            }\r\n\r\n            .modal-content {\r\n                margin: 25% auto;\r\n            }\r\n        }\r\n    <\/style>\r\n<\/head>\r\n<body>\r\n    <div class=\"sudoku-app\">\r\n        <h1><\/h1>\r\n\r\n        <div class=\"control-panel\">\r\n            <button id=\"easyButton\" onclick=\"startSudoku('easy')\">Easy<\/button>\r\n            <button id=\"mediumButton\" onclick=\"startSudoku('medium')\" class=\"button-selected\">Medium<\/button>\r\n            <button id=\"hardButton\" onclick=\"startSudoku('hard')\">Hard<\/button>\r\n        <\/div>\r\n\r\n        <!-- Error Limit Slider -->\r\n        <div class=\"control-panel\">\r\n            <label for=\"errorLimitSlider\">Fehler erlauben: <span id=\"errorLimitValue\">5<\/span><\/label>\r\n            <input type=\"range\" id=\"errorLimitSlider\" min=\"0\" max=\"10\" value=\"5\" onchange=\"updateErrorLimit(this.value)\">\r\n        <\/div>\r\n\r\n        <div class=\"start-button-container\">\r\n            <button id=\"startPauseButton\" onclick=\"toggleTimer()\">Start<\/button>\r\n            <button id=\"resetButton\" onclick=\"resetGame()\">Reset<\/button>\r\n            <div class=\"timer\" id=\"timer\">Zeit: 00:00<\/div>\r\n        <\/div>\r\n\r\n        <div class=\"sudoku-grid\" id=\"sudokuGrid\"><\/div>\r\n\r\n        <div class=\"control-panel\">\r\n            <button id=\"addNumberButton\" onclick=\"addCorrectNumber()\">F\u00fcge eine richtige Zahl hinzu<\/button>\r\n            <button id=\"showSolutionButton\" onclick=\"showSolution()\">L\u00f6sung<\/button>\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <!-- Completion Popup -->\r\n    <div id=\"completionPopup\" class=\"modal\">\r\n        <div class=\"modal-content\">\r\n            <p>Herzlichen Gl\u00fcckw\u00fcnsch! Sie haben diese Aufgabe erfolgreich gemeistert.<\/p>\r\n            <button onclick=\"startNewAdaptiveGame()\">Ein neues Spiel?<\/button>\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <!-- Error Limit Reached Popup -->\r\n    <div id=\"errorLimitPopup\" class=\"modal\">\r\n        <div class=\"modal-content\">\r\n            <p>Fehlermaximum erreicht.<\/p>\r\n            <button onclick=\"startNewGame()\">Neues Spiel starten<\/button>\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <script>\r\n        let timerInterval;\r\n        let timerStarted = false;\r\n        let solutionBoard = [];\r\n        let fullSolutionBoard = [];\r\n        let currentDifficulty = 'medium';\r\n        let totalSeconds = 0;\r\n        let errorLimit = 5;\r\n        let totalErrors = 0;\r\n        let startingFilledCells = {\r\n            'easy': 36,\r\n            'medium': 30,\r\n            'hard': 24\r\n        };\r\n\r\n        document.addEventListener(\"DOMContentLoaded\", () => {\r\n            startSudoku('medium');\r\n        });\r\n\r\n        function toggleTimer() {\r\n            const startPauseButton = document.getElementById(\"startPauseButton\");\r\n            if (!timerStarted) {\r\n                startTimer();\r\n                timerStarted = true;\r\n                startPauseButton.textContent = \"Pause\";\r\n            } else {\r\n                pauseGame();\r\n                startPauseButton.textContent = \"Start\";\r\n            }\r\n        }\r\n\r\n        function pauseGame() {\r\n            clearInterval(timerInterval);\r\n            timerStarted = false;\r\n        }\r\n\r\n        function resetGame() {\r\n            pauseGame();\r\n            totalSeconds = 0;\r\n            totalErrors = 0;\r\n            document.getElementById(\"timer\").textContent = \"Zeit: 00:00\";\r\n            document.getElementById(\"startPauseButton\").textContent = \"Start\";\r\n            initializeGrid(currentDifficulty);\r\n        }\r\n\r\n        function startSudoku(difficulty) {\r\n            currentDifficulty = difficulty;\r\n            if (difficulty === 'easy') {\r\n                startingFilledCells[difficulty] = 36;\r\n            } else if (difficulty === 'medium') {\r\n                startingFilledCells[difficulty] = 30;\r\n            } else if (difficulty === 'hard') {\r\n                startingFilledCells[difficulty] = 24;\r\n            }\r\n            resetGame();\r\n            highlightSelectedButton(difficulty);\r\n        }\r\n\r\n        function initializeGrid(difficulty) {\r\n            const sudokuGrid = document.getElementById(\"sudokuGrid\");\r\n            sudokuGrid.innerHTML = \"\";\r\n            const filledCells = startingFilledCells[difficulty];\r\n            const { puzzle: prefilledCells, solution: fullBoard } = generateValidSudoku(filledCells);\r\n            solutionBoard = [...prefilledCells];\r\n            fullSolutionBoard = [...fullBoard];\r\n            totalErrors = 0; \/\/ Reset total errors\r\n            for (let i = 0; i < 81; i++) {\r\n                const cell = document.createElement(\"div\");\r\n                cell.classList.add(\"sudoku-cell\");\r\n                const input = document.createElement(\"input\");\r\n                input.type = \"tel\"; \/\/ Changed back to 'tel' for numeric keypad\r\n                input.maxLength = 1;\r\n                input.dataset.index = i; \/\/ Store the index for reference\r\n                if (prefilledCells[i] !== null) {\r\n                    input.value = prefilledCells[i];\r\n                    input.readOnly = true; \/\/ Use readOnly instead of disabled\r\n                    input.classList.add('initial-cell'); \/\/ Style initial numbers\r\n                } else {\r\n                    \/\/ Add event listener to check input on 'input' event\r\n                    input.addEventListener('input', function() {\r\n                        let val = input.value;\r\n                        \/\/ Remove non-digit characters except digits 1-9\r\n                        val = val.replace(\/[^1-9]\/g, '');\r\n                        input.value = val;\r\n                        input.classList.remove('wrong-cell'); \/\/ Reset wrong-cell class\r\n                        let correctVal = fullSolutionBoard[i];\r\n                        let intVal = parseInt(val, 10);\r\n                        if (val !== '' && !isNaN(intVal) && intVal !== correctVal) {\r\n                            input.classList.add('wrong-cell'); \/\/ Highlight wrong input\r\n                            totalErrors++;\r\n                            if (totalErrors >= errorLimit) {\r\n                                \/\/ Show error limit popup\r\n                                showErrorLimitPopup();\r\n                            }\r\n                        } else if (!isNaN(intVal) && intVal === correctVal) {\r\n                            input.classList.remove('wrong-cell'); \/\/ Correct input\r\n                            checkForCompletion();\r\n                        } else {\r\n                            \/\/ If the input is empty or invalid, remove wrong-cell class\r\n                            input.classList.remove('wrong-cell');\r\n                        }\r\n                    });\r\n                }\r\n                cell.appendChild(input);\r\n                sudokuGrid.appendChild(cell);\r\n            }\r\n        }\r\n\r\n        function generateValidSudoku(filledCells) {\r\n            let board = new Array(81).fill(null);\r\n            fillSudoku(board);\r\n            let fullBoard = [...board];\r\n            removeCells(board, 81 - filledCells);\r\n            return { puzzle: board, solution: fullBoard };\r\n        }\r\n\r\n        function fillSudoku(board) {\r\n            function canPlace(board, row, col, num) {\r\n                for (let i = 0; i < 9; i++) {\r\n                    if (board[row * 9 + i] === num || board[i * 9 + col] === num) return false;\r\n                }\r\n                let startRow = Math.floor(row \/ 3) * 3;\r\n                let startCol = Math.floor(col \/ 3) * 3;\r\n                for (let r = 0; r < 3; r++) {\r\n                    for (let c = 0; c < 3; c++) {\r\n                        if (board[(startRow + r) * 9 + (startCol + c)] === num) return false;\r\n                    }\r\n                }\r\n                return true;\r\n            }\r\n\r\n            function solve(board) {\r\n                for (let i = 0; i < 81; i++) {\r\n                    if (board[i] === null) {\r\n                        let numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9];\r\n                        numbers = shuffleArray(numbers);\r\n                        for (let num of numbers) {\r\n                            if (canPlace(board, Math.floor(i \/ 9), i % 9, num)) {\r\n                                board[i] = num;\r\n                                if (solve(board)) {\r\n                                    return true;\r\n                                }\r\n                                board[i] = null;\r\n                            }\r\n                        }\r\n                        return false;\r\n                    }\r\n                }\r\n                return true;\r\n            }\r\n\r\n            function shuffleArray(array) {\r\n                for (let i = array.length -1; i > 0; i--) {\r\n                    let j = Math.floor(Math.random() * (i +1));\r\n                    [array[i], array[j]] = [array[j], array[i]];\r\n                }\r\n                return array;\r\n            }\r\n\r\n            solve(board);\r\n        }\r\n\r\n        function removeCells(board, count) {\r\n            let removed = 0;\r\n            while (removed < count) {\r\n                let index = Math.floor(Math.random() * 81);\r\n                if (board[index] !== null) {\r\n                    board[index] = null;\r\n                    removed++;\r\n                }\r\n            }\r\n        }\r\n\r\n        function startTimer() {\r\n            const timerElement = document.getElementById(\"timer\");\r\n            timerInterval = setInterval(() => {\r\n                totalSeconds++;\r\n                const minutes = Math.floor(totalSeconds \/ 60).toString().padStart(2, '0');\r\n                const sec = (totalSeconds % 60).toString().padStart(2, '0');\r\n                timerElement.textContent = `Zeit: ${minutes}:${sec}`;\r\n            }, 1000);\r\n        }\r\n\r\n        function highlightSelectedButton(difficulty) {\r\n            document.getElementById(\"easyButton\").classList.remove(\"button-selected\");\r\n            document.getElementById(\"mediumButton\").classList.remove(\"button-selected\");\r\n            document.getElementById(\"hardButton\").classList.remove(\"button-selected\");\r\n\r\n            if (difficulty === 'easy') {\r\n                document.getElementById(\"easyButton\").classList.add(\"button-selected\");\r\n            } else if (difficulty === 'medium') {\r\n                document.getElementById(\"mediumButton\").classList.add(\"button-selected\");\r\n            } else if (difficulty === 'hard') {\r\n                document.getElementById(\"hardButton\").classList.add(\"button-selected\");\r\n            }\r\n        }\r\n\r\n        function addCorrectNumber() {\r\n            const sudokuGrid = document.getElementById(\"sudokuGrid\");\r\n            const inputs = sudokuGrid.getElementsByTagName(\"input\");\r\n            let emptyCells = [];\r\n            for (let i = 0; i < 81; i++) {\r\n                if ((inputs[i].value === \"\" || inputs[i].value === null) && !inputs[i].readOnly) {\r\n                    emptyCells.push(i);\r\n                }\r\n            }\r\n            if (emptyCells.length > 0) {\r\n                let randomIndex = emptyCells[Math.floor(Math.random() * emptyCells.length)];\r\n                inputs[randomIndex].value = fullSolutionBoard[randomIndex];\r\n                inputs[randomIndex].classList.add(\"solution-cell\");\r\n                inputs[randomIndex].readOnly = true;\r\n                checkForCompletion();\r\n            }\r\n        }\r\n\r\n        function showSolution() {\r\n            const sudokuGrid = document.getElementById(\"sudokuGrid\");\r\n            const inputs = sudokuGrid.getElementsByTagName(\"input\");\r\n            for (let i = 0; i < 81; i++) {\r\n                inputs[i].value = fullSolutionBoard[i];\r\n                inputs[i].classList.add(\"solution-cell\");\r\n                inputs[i].readOnly = true;\r\n            }\r\n            pauseGame();\r\n        }\r\n\r\n        function updateErrorLimit(value) {\r\n            errorLimit = parseInt(value);\r\n            document.getElementById('errorLimitValue').textContent = value;\r\n        }\r\n\r\n        function checkForCompletion() {\r\n            const sudokuGrid = document.getElementById(\"sudokuGrid\");\r\n            const inputs = sudokuGrid.getElementsByTagName(\"input\");\r\n            for (let i = 0; i < 81; i++) {\r\n                let val = inputs[i].value;\r\n                let correctVal = fullSolutionBoard[i];\r\n                if (parseInt(val, 10) !== correctVal) {\r\n                    return;\r\n                }\r\n            }\r\n            \/\/ Stop the timer\r\n            pauseGame();\r\n            \/\/ Show completion popup\r\n            showCompletionPopup();\r\n        }\r\n\r\n        function showCompletionPopup() {\r\n            const popup = document.getElementById('completionPopup');\r\n            popup.style.display = 'block';\r\n        }\r\n\r\n        function showErrorLimitPopup() {\r\n            const popup = document.getElementById('errorLimitPopup');\r\n            popup.style.display = 'block';\r\n            pauseGame(); \/\/ Pause the game when error limit is reached\r\n        }\r\n\r\n        function startNewAdaptiveGame() {\r\n            \/\/ Close the completion popup\r\n            const popup = document.getElementById('completionPopup');\r\n            popup.style.display = 'none';\r\n\r\n            \/\/ Decrease the number of filled cells by 1, with a minimum limit\r\n            if (startingFilledCells[currentDifficulty] > 0) {\r\n                startingFilledCells[currentDifficulty]--;\r\n            }\r\n\r\n            resetGame();\r\n        }\r\n\r\n        function startNewGame() {\r\n            \/\/ Close the error limit popup\r\n            const popup = document.getElementById('errorLimitPopup');\r\n            popup.style.display = 'none';\r\n\r\n            resetGame();\r\n        }\r\n\r\n        \/\/ Close the modals when clicking outside of them\r\n        window.onclick = function(event) {\r\n            const completionPopup = document.getElementById('completionPopup');\r\n            const errorLimitPopup = document.getElementById('errorLimitPopup');\r\n            if (event.target == completionPopup) {\r\n                completionPopup.style.display = \"none\";\r\n            }\r\n            if (event.target == errorLimitPopup) {\r\n                errorLimitPopup.style.display = \"none\";\r\n            }\r\n        }\r\n    <\/script>\r\n<\/body>\r\n<\/html>\r\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-ec2061f e-flex e-con-boxed e-con e-parent\" data-id=\"ec2061f\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-bc17f55 elementor-widget elementor-widget-heading\" data-id=\"bc17f55\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Erkl\u00e4rung der Kn\u00f6pfe<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-3a1884a elementor-widget-mobile__width-initial elementor-widget elementor-widget-text-editor\" data-id=\"3a1884a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<ul><li><strong>Easy, Medium, Hard:<\/strong> Diese Schaltfl\u00e4chen erm\u00f6glichen es Ihnen, den Schwierigkeitsgrad des Sudoku-Spiels zu w\u00e4hlen. Ein einfaches Sudoku enth\u00e4lt mehr vorgegebene Zahlen, w\u00e4hrend schwierigere weniger Vorgaben haben und mehr logisches Denken erfordern.<\/li><li><strong>Fehler erlauben (Slider):<\/strong> Hier k\u00f6nnen Sie einstellen, wie viele Fehler Sie insgesamt machen d\u00fcrfen, bevor das Spiel beendet ist. Wenn Sie eine falsche Zahl eingeben, wird das betroffene Feld rot markiert. <strong>Sobald das Fehlermaximum erreicht ist, erscheint ein Pop-up, das Sie informiert, dass Sie die maximale Anzahl an Fehlern gemacht haben und das Spiel beendet ist.<\/strong><\/li><li><strong>Start:<\/strong> Beginnt das Spiel und startet den Timer, der Ihre ben\u00f6tigte Zeit misst.<\/li><li><strong>Reset:<\/strong> Setzt den Timer auf Null zur\u00fcck und l\u00e4dt ein neues Sudoku. Achtung: Ihr Fortschritt geht verloren, wenn Sie auf Reset klicken.<\/li><li><strong>F\u00fcge eine richtige Zahl hinzu:<\/strong> Hilft Ihnen, wenn du feststeckst. Das Spiel f\u00fcllt f\u00fcr Sie eine korrekte Zahl ein.<\/li><li><strong>L\u00f6sung:<\/strong> Zeigt die vollst\u00e4ndige L\u00f6sung des aktuellen Sudoku-R\u00e4tsels.<\/li><\/ul>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-45eeb75 e-flex e-con-boxed e-con e-parent\" data-id=\"45eeb75\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-8ec7ba9 elementor-widget elementor-widget-heading\" data-id=\"8ec7ba9\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Wie funktioniert Sudoku?<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e3ee085 elementor-widget-mobile__width-initial elementor-widget elementor-widget-text-editor\" data-id=\"e3ee085\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Sudoku ist ein Logikr\u00e4tsel, das in einem 9&#215;9-Raster gespielt wird, welches in neun 3&#215;3-Untergitter aufgeteilt ist. Ihre Aufgabe ist es, das Raster so zu f\u00fcllen, dass in jeder Reihe, jeder Spalte und jedem 3&#215;3-Untergitter alle Zahlen von 1 bis 9 genau einmal vorkommen. Am Anfang sind einige Zahlen vorgegeben, und es liegt an Ihnen, den Rest auszuf\u00fcllen.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-2145794 e-flex e-con-boxed e-con e-parent\" data-id=\"2145794\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-913565a elementor-widget elementor-widget-heading\" data-id=\"913565a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Was ist der Nutzen von Sudoku?<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-f6fa5a8 elementor-widget-mobile__width-initial elementor-widget elementor-widget-text-editor\" data-id=\"f6fa5a8\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Sudoku ist nicht nur ein unterhaltsames Spiel, sondern f\u00f6rdert auch das logische Denken, das Ged\u00e4chtnis und die Konzentration. Das adaptive Design, bei dem der Schwierigkeitsgrad je nach Fortschritt anpasst wird, hilft Ihnen, sich stetig zu verbessern und immer neue Herausforderungen zu meistern. Durch regelm\u00e4ssiges Spielen wird die F\u00e4higkeit zur Probleml\u00f6sung gest\u00e4rkt, was sich positiv auf die kognitive Leistungsf\u00e4higkeit auswirken kann.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-7c9775a e-flex e-con-boxed e-con e-parent\" data-id=\"7c9775a\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-66d7ce8 elementor-widget elementor-widget-heading\" data-id=\"66d7ce8\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Sudoku-Tipps: Strategien zum L\u00f6sen<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-56fc989 elementor-widget-mobile__width-initial elementor-widget elementor-widget-text-editor\" data-id=\"56fc989\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<ul><li><strong>Zuerst die leichten Zahlen:<\/strong> Beginne mit den Zahlen, die am h\u00e4ufigsten im Raster fehlen. Sie k\u00f6nnen Ihnen Hinweise f\u00fcr den Rest des Spiels geben.<\/li><li><strong>Ausschlussmethode:<\/strong> Schauen Sie sich jeden leeren Platz an und \u00fcberlegen Sie, welche Zahlen dort nicht m\u00f6glich sind, um so die richtige Zahl einzugrenzen.<\/li><li><strong>Streifenmethode:<\/strong> Betrachten Sie immer mehrere Reihen, Spalten und 3&#215;3-Bl\u00f6cke auf einmal, um zu sehen, wo eine Zahl logisch platziert werden kann.<\/li><li><strong>Geduld ist der Schl\u00fcssel:<\/strong> Sudoku erfordert manchmal, dass Sie eine Weile \u00fcber das n\u00e4chste Feld nachdenken. Gehen Sie es Schritt f\u00fcr Schritt an, anstatt zu raten.<\/li><\/ul>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Spielen Sie Sudoku online mit individuell einstellbarem Fehlerlimit. Unser adaptives Sudoku wird nach jedem Erfolg schwieriger.<\/p>","protected":false},"author":1,"featured_media":0,"parent":1467,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"content-type":"","iawp_total_views":5837,"footnotes":""},"class_list":["post-3046","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Sudoku: Gratis online spielen - leicht bis schwer<\/title>\n<meta name=\"description\" content=\"Spielen Sie Sudoku online mit individuell einstellbarem Fehlerlimit. Unser adaptives Sudoku wird nach jedem Erfolg schwieriger.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fahrtauglich.ch\/fr\/praxisportal\/sudoku\/\" \/>\n<meta property=\"og:locale\" content=\"fr_FR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Sudoku: Gratis online spielen - leicht bis schwer\" \/>\n<meta property=\"og:description\" content=\"Spielen Sie Sudoku online mit individuell einstellbarem Fehlerlimit. Unser adaptives Sudoku wird nach jedem Erfolg schwieriger.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fahrtauglich.ch\/fr\/praxisportal\/sudoku\/\" \/>\n<meta property=\"og:site_name\" content=\"Fahrtauglich\" \/>\n<meta property=\"article:modified_time\" content=\"2025-02-06T11:57:58+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Dur\u00e9e de lecture estim\u00e9e\" \/>\n\t<meta name=\"twitter:data1\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/fahrtauglich.ch\\\/praxisportal\\\/sudoku\\\/\",\"url\":\"https:\\\/\\\/fahrtauglich.ch\\\/praxisportal\\\/sudoku\\\/\",\"name\":\"Sudoku: Gratis online spielen - leicht bis schwer\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/fahrtauglich.ch\\\/#website\"},\"datePublished\":\"2024-10-14T14:11:59+00:00\",\"dateModified\":\"2025-02-06T11:57:58+00:00\",\"description\":\"Spielen Sie Sudoku online mit individuell einstellbarem Fehlerlimit. Unser adaptives Sudoku wird nach jedem Erfolg schwieriger.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/fahrtauglich.ch\\\/praxisportal\\\/sudoku\\\/#breadcrumb\"},\"inLanguage\":\"fr-FR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/fahrtauglich.ch\\\/praxisportal\\\/sudoku\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/fahrtauglich.ch\\\/praxisportal\\\/sudoku\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Startseite\",\"item\":\"https:\\\/\\\/fahrtauglich.ch\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Praxisportal\",\"item\":\"https:\\\/\\\/fahrtauglich.ch\\\/praxisportal\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Sudoku\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/fahrtauglich.ch\\\/#website\",\"url\":\"https:\\\/\\\/fahrtauglich.ch\\\/\",\"name\":\"Fahrtauglich\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/fahrtauglich.ch\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/fahrtauglich.ch\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"fr-FR\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/fahrtauglich.ch\\\/#organization\",\"name\":\"Fahrtauglich\",\"url\":\"https:\\\/\\\/fahrtauglich.ch\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\\\/\\\/fahrtauglich.ch\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/fahrtauglich.ch\\\/wp-content\\\/uploads\\\/2024\\\/08\\\/cropped-Logo-2.jpg\",\"contentUrl\":\"https:\\\/\\\/fahrtauglich.ch\\\/wp-content\\\/uploads\\\/2024\\\/08\\\/cropped-Logo-2.jpg\",\"width\":307,\"height\":188,\"caption\":\"Fahrtauglich\"},\"image\":{\"@id\":\"https:\\\/\\\/fahrtauglich.ch\\\/#\\\/schema\\\/logo\\\/image\\\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Sudoku: Gratis online spielen - leicht bis schwer","description":"Spielen Sie Sudoku online mit individuell einstellbarem Fehlerlimit. Unser adaptives Sudoku wird nach jedem Erfolg schwieriger.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/fahrtauglich.ch\/fr\/praxisportal\/sudoku\/","og_locale":"fr_FR","og_type":"article","og_title":"Sudoku: Gratis online spielen - leicht bis schwer","og_description":"Spielen Sie Sudoku online mit individuell einstellbarem Fehlerlimit. Unser adaptives Sudoku wird nach jedem Erfolg schwieriger.","og_url":"https:\/\/fahrtauglich.ch\/fr\/praxisportal\/sudoku\/","og_site_name":"Fahrtauglich","article_modified_time":"2025-02-06T11:57:58+00:00","twitter_card":"summary_large_image","twitter_misc":{"Dur\u00e9e de lecture estim\u00e9e":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/fahrtauglich.ch\/praxisportal\/sudoku\/","url":"https:\/\/fahrtauglich.ch\/praxisportal\/sudoku\/","name":"Sudoku: Gratis online spielen - leicht bis schwer","isPartOf":{"@id":"https:\/\/fahrtauglich.ch\/#website"},"datePublished":"2024-10-14T14:11:59+00:00","dateModified":"2025-02-06T11:57:58+00:00","description":"Spielen Sie Sudoku online mit individuell einstellbarem Fehlerlimit. Unser adaptives Sudoku wird nach jedem Erfolg schwieriger.","breadcrumb":{"@id":"https:\/\/fahrtauglich.ch\/praxisportal\/sudoku\/#breadcrumb"},"inLanguage":"fr-FR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fahrtauglich.ch\/praxisportal\/sudoku\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fahrtauglich.ch\/praxisportal\/sudoku\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Startseite","item":"https:\/\/fahrtauglich.ch\/"},{"@type":"ListItem","position":2,"name":"Praxisportal","item":"https:\/\/fahrtauglich.ch\/praxisportal\/"},{"@type":"ListItem","position":3,"name":"Sudoku"}]},{"@type":"WebSite","@id":"https:\/\/fahrtauglich.ch\/#website","url":"https:\/\/fahrtauglich.ch\/","name":"Fahrtauglich","description":"","publisher":{"@id":"https:\/\/fahrtauglich.ch\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fahrtauglich.ch\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"fr-FR"},{"@type":"Organization","@id":"https:\/\/fahrtauglich.ch\/#organization","name":"Fahrtauglich","url":"https:\/\/fahrtauglich.ch\/","logo":{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/fahrtauglich.ch\/#\/schema\/logo\/image\/","url":"https:\/\/fahrtauglich.ch\/wp-content\/uploads\/2024\/08\/cropped-Logo-2.jpg","contentUrl":"https:\/\/fahrtauglich.ch\/wp-content\/uploads\/2024\/08\/cropped-Logo-2.jpg","width":307,"height":188,"caption":"Fahrtauglich"},"image":{"@id":"https:\/\/fahrtauglich.ch\/#\/schema\/logo\/image\/"}}]}},"jetpack_sharing_enabled":true,"rttpg_featured_image_url":null,"rttpg_author":{"display_name":"fahrtauglich.ch","author_link":"https:\/\/fahrtauglich.ch\/fr\/blog\/author\/mintcream-quetzal-259960-hostingersite-com\/"},"rttpg_comment":0,"rttpg_category":null,"rttpg_excerpt":"Spielen Sie Sudoku online mit individuell einstellbarem Fehlerlimit. Unser adaptives Sudoku wird nach jedem Erfolg schwieriger.","_links":{"self":[{"href":"https:\/\/fahrtauglich.ch\/fr\/wp-json\/wp\/v2\/pages\/3046","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fahrtauglich.ch\/fr\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/fahrtauglich.ch\/fr\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/fahrtauglich.ch\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fahrtauglich.ch\/fr\/wp-json\/wp\/v2\/comments?post=3046"}],"version-history":[{"count":217,"href":"https:\/\/fahrtauglich.ch\/fr\/wp-json\/wp\/v2\/pages\/3046\/revisions"}],"predecessor-version":[{"id":5766,"href":"https:\/\/fahrtauglich.ch\/fr\/wp-json\/wp\/v2\/pages\/3046\/revisions\/5766"}],"up":[{"embeddable":true,"href":"https:\/\/fahrtauglich.ch\/fr\/wp-json\/wp\/v2\/pages\/1467"}],"wp:attachment":[{"href":"https:\/\/fahrtauglich.ch\/fr\/wp-json\/wp\/v2\/media?parent=3046"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}