숫자 짝 실험실: 동현텐TM
같은 수이거나 합이 10인 두 수를 찾아 지운다. 막혔을 때 쓰는 Add와 Hint의 횟수는 동현랭으로 정한다.
처음이라면? 예제를 고르고 시작을 눌러 보자. Add와 Hint의 횟수는 모두 동현랭 명령으로만 정한다.
동현랭 배우기 · 실행기 ↗A 숫자 판
판을 준비하는 중GAME OVER
점수0
- 오늘 최고0
- 이번 주 최고0
- 역대 최고0
B 동현랭 설정 코드
ten.dh예제를 고른 뒤 시작을 눌러 보자. Add와 Hint 횟수는 코드로만 정한다.
동현텐 규약
정하는 것은 두 숫자다
- 동현랭 코드가 출력한 첫 정수가 Add 횟수, 둘째 정수가 Hint 횟수다.
- 기본값은
7과3이다. 아무것도 출력하지 않으면 이 값으로 시작한다. - 두 값 모두
0부터9까지 쓸 수 있다. 0이면 그 단추를 쓸 수 없다. - 정수를 하나만 출력하거나 셋 이상 출력하면, 또는 범위를 벗어나면 시작하지 않고 오류를 알려 준다.
- 판을 다 비워 다음 판으로 넘어가면 Add와 Hint가 코드에서 정한 값으로 다시 채워진다.
예제
01 · 기본은 뿡뿡 도오오오오오오옹~뿡뿡뿡으로 7을, 뿡뿡 도오오옹~뿡뿡뿡으로 3을 출력한다. 02 · 아껴 쓰기는 5와 1, 03 · 맨손은 0과 0이다. 0은 도옹ㅠ로 쓴다.
코드가 하지 않는 것
동현랭 코드는 판의 숫자나 짝을 고르지 않는다. 첫 판의 수 42개는 1부터 9까지 고르게 뽑고, 짝이 하나도 없는 판은 다시 뽑는다. 짝을 찾아 누르는 것은 사람이 한다.
점수
- 바로 붙은 두 수를 지우면 1점, 지워진 칸을 사이에 두고 떨어진 두 수를 지우면 4점이다.
- 한 줄이 모두 지워지면 그 줄이 판에서 빠지고 10점을 더한다.
- 판의 수를 모두 지우면 150점을 더하고 다음 판(STAGE)으로 넘어간다. 점수는 이어진다.
- 오늘·이번 주·역대 최고 점수는 이 브라우저에만 저장된다. 서버로 보내지 않는다.
놀이 방법
짝을 지운다
- 같은 두 수(예: 3과 3)나 합이 10인 두 수(예: 2와 8)가 짝이다. 두 수를 차례로 누르면 지워진다.
- 짝은 가로·세로·대각선으로 이웃해야 한다.
- 사이에 지워진 칸만 있으면 떨어져 있어도 짝이 된다. 지울수록 새 길이 열린다.
- 가로줄은 이어져 있다. 줄 끝의 수는 다음 줄의 첫 수와도 짝이 될 수 있다.
- 잘못 고르면 판이 살짝 흔들린다. 고른 칸을 다시 누르면 선택이 풀린다.
막히면
- Add: 판에 남은 수를 같은 순서로 맨 뒤에 다시 적는다. 판에 있는 수만 나온다. 새로 적은 수는 파란색이다.
- Hint: 지울 수 있는 짝 하나를 노랗게 보여 준다. 짝이 없으면 Add 단추를 가리킨다. 이때는 Hint가 줄지 않는다.
- 둘 다 단추 위 숫자만큼 쓸 수 있다. 처음 값은 동현랭 코드가 정한다.
끝
지울 수 있는 짝이 없고 Add도 남지 않으면 끝이다. 판을 비우고 계속 지워서 점수를 최대한 올려 보자.
원작과 출처
오래된 종이 숫자 게임
이 놀이는 모눈종이에 수를 적고 같은 수나 합이 10인 짝을 지워 가던 종이 게임에서 왔다. Take Ten, Numberama, Seeds, Number Match 등 여러 이름으로 불린다(The World at Play, NUMBERAMA). 동현텐이라는 이름은 Take Ten에서 따왔다.
대각선 짝, Add·Hint 단추, 오늘·이번 주·역대 최고 점수의 구성은 휴대전화 게임 「Matching Numbers」의 규칙 안내를 참고했다. 점수 배분(붙은 짝 1점, 떨어진 짝 4점, 한 줄 10점, 판 전체 150점)은 널리 쓰이는 방식을 따랐다(Number Match: 10 or Pair!).
권리
동현텐은 그 게임들의 코드·그림·글을 쓰지 않았다. 화면과 코드는 새로 만들었다. 동현텐은 위 게임의 제작사와 관계가 없고 승인도 받지 않았다.
동현텐이 만든 것
규칙 엔진, 숫자 판 화면, 동현랭 Add·Hint 규약, 예제, 문서. 이 부분은 MIT 라이선스다. 동현랭 실행기(donghyun.js)는 동현랭 v1.53을 고치지 않고 썼다.
글꼴
Black Han Sans, Nanum Gothic Coding, Pretendard — SIL Open Font License 1.1.
시험
node qa/core-tests.cjs가 짝 판정(가로·세로·대각선·줄 넘김), 점수, 빈 줄 빼기, Add, Hint, 끝 판정과 예제 출력을 확인한다.