이 작은 스 니펫의 경우 행과 열의 일부인지 확인하고 난수를 생성합니다. 그 중 하나가 아닌 경우 숫자를 삽입합니다. 이미 3x3 상자에있는 숫자를 넣을 수는 있지만 그 문제는 해결할 수 있습니다. 내 코드를 편집하려면 여기를 클릭하십시오. 내 코드는 약 100 줄입니다.스도쿠 해답, 작은 발췌문 문제 (matlab)
% Find empty slots, generate random number 1 - 9, insert into slot.
for i=1:9
for j=1:9
number = board(i,j);
answer = ceil(9*rand(1,1));
row = board(i,:);
col = board(:,j);
if number==0 && (ismember(answer,row)==0) && (ismember(answer,col)==0)
board(i,j) = answer;
end
end
end
내 문제는 내가 진짜 미해결 퍼즐이를 실행할 때,이다 그것은 슬롯에 11 삽입) 1, 어떻게 가능할까요? 2) 같은 번호가 둘 이상있는 행과 열을 계속 볼 수 있습니다.
감사합니다.
는이 작동하지 않습니다 당신은 예를 들어'board'이 있습니까 : 나는 단지 하나 개의 임의의 숫자를 시도하지만, 모든 숫자를 (임의의 순서로) 1-9하려고하지, 코드 약간 수정? 약 100 번 임의의 보드에서 실행하면, 나는 확실히 11을 보지 못했습니다. 행이나 열의 숫자가 모두 같은지 확인하지 않았지만 내가 확인한 것을 보지 못했습니다. 코드가 작동해야하는 것처럼 보입니다. – ThijsW
확실한 것은 내가 사용한 퍼즐이이 페이지의 첫 번째 퍼즐이었습니다. http://theory.tifr.res.in/~sgupta/sudoku/algo.html –