(토이프로젝트)인쇄용 나눗셈 세로식 문제지

시작

아들 1호가 분수를 계산하지 못하고 있길래, 옆에 붙어서 하나하나 가르쳐 줬다. 그런데도 속도가 나지 않는 것이다. 정확히는 가분수를 대분수로 변환하는 문제들이었는데, 보통 나눗셈이 가능하면 충분히 풀수 있는 문제들 이었다. 345/3 을 대분수로 전환한다고 하면 나눈 다음에 몫을 앞에 쓰고 3을 분모에 쓰고 나머지를 분자에 쓰면 되는 것이다. 아무튼 문제푸는 과정도 쓰지 않고 풀고 있는 1호에게 연습장에 풀이과정을 쓰면서 풀어보라고 했다. 그런데 “어버버버”하는 것이다. 그래서 나눗셈의 세로식을 써서 풀라고 얘기를 해줬는데…

“아빠.. 세로식을 까먹었는데요?”

이전에 사놓은 문제집들을 가져오니 아직 안푼 세로식 나눗셈 문제들이 꽤 있었다. 그래서 하루에 두장씩 풀게 시켰더니 어느새 더 풀 문제가 사라졌다. 그런데 아직도 문제푸는 속도는 느렸다. (너무너무너무)

고민

아내가 나눗셈 문제집을 하나 더 사겠다는데, 이미 지나간 나눗셈 문제를 또 사서 푼다는게 너무 너무 비효율적이라고 느껴졌다.(사실은 돈이 아까웠다…) 그리고 빠르게 문제를 풀기 위해서는 대량의 문제를 반복적으로 계속 풀게 하는게 답이라고 생각했는데, 내가 원하는 문제스타일만 문제집에 출제되어있을 것이라고 생각이 들지 않았다.

만들자

내가 필요한건 세자리 숫자를 한자리 숫자로 나누는 문제. 랜덤한 숫자로 문제가 출제되면 되는 것이다. 그냥 웹서버에서 자바스크립트만으로도 충분히 구현이 가능해보였다. 요즘 회사에서 vue.js R&D를 진행 중이었지만, 개인적으로 react에 관심이 조금 더 있어서 리액트로 프로젝트를 생성했다. 이미 node.js 는 설치가 되어 있었고, 물론 react도 설치되어있었다.

create-react-app dvt

dvt는 즉흥적으로 생각해낸 división vertical test 의 약자… 의미가 맞을진 모르겠다.

요구사항은 간단하다. 나눗셈 세로식 문제가 인쇄하기 좋게 출력되면 된다.

대충 퍼블리셔인 친구에서 조언을 구해서 완셩.

소스는 아래 링크를 참조하길 바란다.

https://github.com/luv20100918/dvt

배포

yarn build

빌드하고 서버에 올렸다. 이미 지난 토이프로젝트들을 진행하면서 만들어놨던 서버에 올렸다.

후기

아들이 싫어한다.