Sudoku Oyna | Ücretsiz Online Sudoku Bulmaca Oyunu

TAKİP ET

Ücretsiz Sudoku oyununu hemen oyna. Mantığını geliştir, sayıları doğru yerlere yerleştir, bulmacayı tamamla ve en iyi süreni elde et.

Sudoku, mantık, dikkat ve problem çözme becerilerini geliştiren dünyanın en popüler sayı bulmaca oyunlarından biridir. Amaç, 9×9 oyun alanındaki boş hücreleri 1’den 9’a kadar olan sayılarla doldurarak her satır, her sütun ve her 3×3 kutuda aynı sayının yalnızca bir kez bulunmasını sağlamaktır. Kolay, orta ve zor seviyeler sayesinde her yaştan oyuncuya hitap eder. Bilgisayarda klavye ile, mobil cihazlarda ise dokunmatik kontrollerle rahatlıkla oynanabilir. En iyi süreni geliştirmek için dikkatli düşün, hatalardan kaçın, ipuçlarını gerektiğinde kullan ve her yeni bulmacada mantığını sınayarak Sudoku ustası olmaya hemen başla.

 

Zeka Oyunu

Sudoku

Satır, sütun ve 3×3 alanlarda 1’den 9’a kadar tüm sayıları doğru yerleştir.

SÜRE00:00 HATA0 / 3 EN İYİ--:-- KolayOrtaZorYeni OyunİpucuSil Bir hücre seç ve aşağıdaki sayılardan birine dokun.  

Tebrikler!

Sudoku tamamlandı.

Yeni Oyun   Bilgisayarda sayı tuşlarını kullanabilir, Backspace veya Delete ile silebilirsin. Mobilde hücreyi ve ardından sayıyı seçmen yeterlidir. .gulum-sudoku,.gulum-sudoku *{box-sizing:border-box}.gulum-sudoku{--p:#7c3aed;--p2:#ec4899;--dark:#100c25;--dark2:#251942;--muted:#d3cee0;width:100%;padding:34px 12px;color:#fff;font-family:Arial,Helvetica,sans-serif}.gulum-sudoku__box{width:min(100%,650px);margin:auto;padding:25px 22px;text-align:center;background:radial-gradient(circle at 90% 5%,rgba(236,72,153,.2),transparent 30%),linear-gradient(145deg,var(--dark),var(--dark2));border:1px solid rgba(255,255,255,.12);border-radius:25px;box-shadow:0 24px 60px rgba(20,10,55,.35)}.gulum-sudoku header{margin-bottom:15px}.gulum-sudoku__tag{display:inline-flex;padding:6px 14px;margin-bottom:9px;border-radius:999px;background:linear-gradient(135deg,var(--p),var(--p2));font-size:12px;font-weight:800;text-transform:uppercase}.gulum-sudoku h1{margin:0 0 7px;font-size:clamp(33px,8vw,46px);line-height:1}.gulum-sudoku p{margin:0;color:var(--muted);font-size:14px;line-height:1.55}.gulum-sudoku__top{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:15px 0 10px}.gulum-sudoku__top>div{padding:11px;border-radius:12px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1)}.gulum-sudoku__top span{display:block;color:#c9c3d9;font-size:10px;font-weight:800}.gulum-sudoku__top strong{display:block;margin-top:4px;font-size:21px;color:#fde047}.gulum-sudoku__actions{display:grid;grid-template-columns:1.15fr 1fr .75fr .65fr;gap:8px;margin-bottom:10px}.gulum-sudoku button,.gulum-sudoku select{min-height:43px;border:0;border-radius:10px;font-weight:800;cursor:pointer}.gulum-sudoku select{padding:0 10px;color:#fff;background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.12)}.gulum-sudoku select option{color:#111}.gulum-sudoku__actions button,.gulum-sudoku__overlay button{color:#fff;background:linear-gradient(135deg,var(--p),var(--p2))}.gulum-sudoku__actions button:nth-of-type(2),.gulum-sudoku__actions button:nth-of-type(3){background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.12)}.gulum-sudoku__status{display:flex;align-items:center;justify-content:center;min-height:42px;margin-bottom:12px;padding:9px;border-radius:11px;background:rgba(255,255,255,.06);font-size:13px;font-weight:700}.gulum-sudoku__board-wrap{position:relative;width:100%;aspect-ratio:1/1}.gulum-sudoku__board{display:grid;grid-template-columns:repeat(9,1fr);grid-template-rows:repeat(9,1fr);width:100%;height:100%;overflow:hidden;border:3px solid #c4b5fd;border-radius:15px;background:#3c3155;touch-action:manipulation;user-select:none}.gulum-sudoku__cell{display:flex;align-items:center;justify-content:center;padding:0;border:0;border-right:1px solid rgba(255,255,255,.14);border-bottom:1px solid rgba(255,255,255,.14);border-radius:0!important;background:rgba(255,255,255,.06)!important;color:#fff!important;font-size:clamp(18px,5vw,31px);font-weight:800}.gulum-sudoku__cell:nth-child(3n){border-right:3px solid #9f8ad1}.gulum-sudoku__cell:nth-child(n+19):nth-child(-n+27),.gulum-sudoku__cell:nth-child(n+46):nth-child(-n+54){border-bottom:3px solid #9f8ad1}.gulum-sudoku__cell.is-given{background:rgba(255,255,255,.15)!important;color:#fde68a!important}.gulum-sudoku__cell.is-selected{background:#7c3aed!important}.gulum-sudoku__cell.is-related{background:rgba(124,58,237,.22)!important}.gulum-sudoku__cell.is-same{box-shadow:inset 0 0 0 3px rgba(236,72,153,.65)}.gulum-sudoku__cell.is-wrong{background:#b91c1c!important;animation:gulumSudokuShake .2s linear}.gulum-sudoku__nums{display:grid;grid-template-columns:repeat(9,1fr);gap:6px;margin-top:13px}.gulum-sudoku__nums button{min-height:47px;color:#fff;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.12);font-size:18px}.gulum-sudoku__nums button:disabled{opacity:.3;cursor:not-allowed}.gulum-sudoku__overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:20px;border-radius:15px;background:rgba(8,5,20,.84);backdrop-filter:blur(5px)}.gulum-sudoku__overlay[hidden]{display:none}.gulum-sudoku__overlay>div{width:min(100%,350px);padding:24px;border-radius:17px;background:#21173c;border:1px solid rgba(255,255,255,.12)}.gulum-sudoku__overlay h2{margin:0 0 8px;font-size:31px}.gulum-sudoku__overlay p{margin-bottom:14px}.gulum-sudoku__overlay button{width:100%}.gulum-sudoku__help{margin-top:13px;padding:11px;border-radius:10px;background:rgba(255,255,255,.05);color:#c9c3d8;font-size:11px;line-height:1.55}@keyframes gulumSudokuShake{25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}@media(max-width:600px){.gulum-sudoku{padding:20px 7px}.gulum-sudoku__box{padding:19px 9px;border-radius:19px}.gulum-sudoku__actions{grid-template-columns:1fr 1fr}.gulum-sudoku__board{border-radius:11px}.gulum-sudoku__nums{gap:4px}.gulum-sudoku__nums button{min-height:42px;padding:0}}@media(max-width:380px){.gulum-sudoku__top{gap:5px}.gulum-sudoku__top strong{font-size:17px}.gulum-sudoku__cell{font-size:17px}} (()=>{"use strict";const root=document.querySelector(".gulum-sudoku");if(!root)return;const boardEl=root.querySelector("#gulumSudokuBoard"),numsEl=root.querySelector("#gulumSudokuNums"),timeEl=root.querySelector("#gulumSudokuTime"),mistakesEl=root.querySelector("#gulumSudokuMistakes"),bestEl=root.querySelector("#gulumSudokuBest"),status=root.querySelector("#gulumSudokuStatus"),levelEl=root.querySelector("#gulumSudokuLevel"),newBtn=root.querySelector("#gulumSudokuNew"),hintBtn=root.querySelector("#gulumSudokuHint"),eraseBtn=root.querySelector("#gulumSudokuErase"),overlay=root.querySelector("#gulumSudokuOverlay"),overlayTitle=root.querySelector("#gulumSudokuOverlayTitle"),overlayText=root.querySelector("#gulumSudokuOverlayText"),againBtn=root.querySelector("#gulumSudokuAgain"),SAVE="gulumSudokuSave",BEST="gulumSudokuBest";let solution=[],puzzle=[],grid=[],given=[],selected=-1,mistakes=0,seconds=0,timer=0,running=false,wrong=-1; const clone=a=>a.map(r=>r.slice()),shuffle=a=>{for(let i=a.length-1;i>0;i--){const j=Math.floor(Math.random()*(i+1));[a[i],a[j]]=[a[j],a[i]]}return a},fmt=s=>String(Math.floor(s/60)).padStart(2,"0")+":"+String(s%60).padStart(2,"0"); function valid(g,r,c,n){for(let i=0;i{seconds++;timeEl.textContent=fmt(seconds);save()},1000);render();save()} function render(){boardEl.innerHTML="";for(let r=0;rselect(i));boardEl.appendChild(b)}mistakesEl.textContent=mistakes+" / 3";timeEl.textContent=fmt(seconds);const key=BEST+levelEl.value,best=+(localStorage.getItem(key)||0);bestEl.textContent=best?fmt(best):"--:--";numsEl.querySelectorAll("button").forEach((b,i)=>{const n=i+1,count=grid.flat().filter(v=>v===n).length;b.disabled=count>=9})} function select(i){const r=Math.floor(i/9),c=i%9;selected=i;wrong=-1;if(given[r][c])status.textContent="Bu sayı başlangıçta verilmiş, değiştirilemez.";else status.textContent="Seçili hücreye bir sayı gir.";render()} function put(n){if(!running||selected{wrong=-1;render()},300);if(mistakes>=3){finish(false)}return}grid[r][c]=n;wrong=-1;status.textContent="Doğru sayı.";render();save();if(grid.flat().every(Boolean))finish(true)} function hint(){if(!running)return;let empties=[];for(let r=0;r{if(/^[1-9]$/.test(e.key)){e.preventDefault();put(+e.key)}else if(e.key==="Backspace"||e.key==="Delete"||e.key==="0"){e.preventDefault();put(0)}else if(selected>=0&&["ArrowLeft","ArrowRight","ArrowUp","ArrowDown"].includes(e.key)){e.preventDefault();let r=Math.floor(selected/9),c=selected%9;if(e.key==="ArrowLeft")c=Math.max(0,c-1);if(e.key==="ArrowRight")c=Math.min(8,c+1);if(e.key==="ArrowUp")r=Math.max(0,r-1);if(e.key==="ArrowDown")r=Math.min(8,r+1);select(r*9+c)}});if(!load())startGame()})();