2007년 03월 07일
윈도우용 스도쿠 프로그램 (소스코드 & 실행파일)
(EXE)sudokoon.zip (source)sudokoon.zip

<시작 화면>

<'새 게임' 버턴을 누른 화면>

<게임 진행중인 화면>

<'정답보기' 버턴을눌러 빈칸에 정답이 입력된 화면>
간단하게나마 게임을 진행할수 있게 제작함
'새 게임'을 하면 몇가지의 기본적으로 제작된 빈칸틀과 빈칸이 아닌곳에 랜덤의 숫자가 입력된
상태로 게임이 시작함.
'편집' 모드에서는 다른곳에서 알아낸 게임을 입력할수 있다. 입력후 '정답보기'를 하면
정답을 볼수 있다.
'시작'버턴은 편집으로 게임을 만들었을경우 원래 입력된 값(초기값)과 빈칸의 차이를 두기위해서
초기값은 Read-Only 칸으로 바꾸어 놓는다.
'정답 확인'은 빈칸을 다 채우고 정답인지 확인한는 버턴이다.
스도쿠 풀이 알고리즘은 1차와 2차로 나뉘어서 풀게된다.
1차로는 예상숫자가 필요하지 않은 단순 숫자 입력으로 가능한 것만 풀게된다.
(아주 쉬운 문제만 풀수 있다. 하지만, 속도가 2차 방식보다는 훨씬 빠르다)
2차로는 빈칸의 예상 숫자 후보를 차례로 입력하는것이다. (모든숫자를 입력하는 방식이 코딩은
쉽지만 풀이에 십수분이 걸렸다.) 계속 칸을 입력하다보면 정답이 아닌경우에는 끝까지 빈칸을
채우지 못하고 빈칸에 숫자를 넣을수 없는 칸이 존재 하게 된다. 그러면 바로 전 빈칸의
숫자를 다른숫자로 하여 진행하게 된다.
이런식으로 풀이가 진행되는데 풀이에 평균 2~3초정도가 소요되고, 길어도 30초 미만의 시간이
걸렸다.
*숫자 입력 방법
아마도 이 프로그램의 가장큰 특징이 아닌가 싶다. 보통 스도쿠 프로그램에서는 숫자입력이 불편하고
속도도 느리다. 온라인 으로 스도쿠 풀이 대결을 하는 서비스가 있다. 다른 스도쿠 풀이 프로그램으로 문제를
입력하고 풀이까지 하는데는 상당한 시간이 필요하다. 결국엔 '치트'를 쓴 의미가 없게 된다.
아무튼 이런저런 이유 때문에 인터페이스에 신경을 많이 쓴 프로그램이다.
-입력방법1
맨 왼쪽 위의 빈칸을 클릭하고 숫자를 입력한다. 오른쪽칸으로 넘어갈때는 엔터를 누르면된다
맨 오른쪽칸에서 엔터를 누르면 밑의줄 맨 왼쪽으로 커서가 이동한다.
-입력방법2
빈칸을 클릭하고 마우스의 휠로 숫자를 변경한다. 휠을 올리면 숫자가 올라가고 휠을 내리면 숫자가 내려간다.
보통 게임 진행시 사용한다.
# by | 2007/03/07 22:59 | │ C언어 예제 | 트랙백 | 덧글(5)





☞ 내 이글루에 이 글과 관련된 글 쓰기 (트랙백 보내기) [도움말]
소스파일 다시 링크 했습니다.
몇가지 테스트중 이상한 점이 있어서 질문을 드렸으면 하네요
자동으로 문제 출제를 했을때 난이도가 3가지 선택이 가능한데요
난이도 선정 기준은 어떻게 되나요??
그리고 문제를 생성했을때 정답이 단 하나 뿐이라고 확인이 가능 한가요??
정답이 하나 뿐이라고는 확인하지 못합니다.
모든 정답의 경우의 수를 계산하려면 상당히 오랜시간이 소요됩니다.
괜찮은 프로그램이네요.
잘 사용 하겠습니다.