MathTools 소개

MathTools가 무엇이고 어떻게 모든 계산을 정확하게 유지하는지.

MathTools는 일상 수학을 위한 스무 개가 넘는 작은 계산기 모음입니다 — 분수와 백분율부터 행렬, 고유값, 단계별 미적분까지. 각 도구는 한 가지 일만 하고 최종 숫자만 보여 주는 대신 전체 풀이 과정을 펼쳐 보여 주며, 많은 단원에는 스스로 연습할 수 있는 무작위 생성 연습문제가 함께합니다.

중요한 곳에서는 정확하게

대부분의 도구는 소수가 아니라 정확한 분수로 계산합니다. 0.75는 처음부터 끝까지 3/4으로 남아 있어 반올림 오차가 끼어들 틈이 없습니다. [[4,7],[2,6]]의 역행렬은 0.6과 −0.7이 아니라 3/5, −7/10, −1/5, 2/5로 나옵니다. 분수는 큰 정수 위에서 동작하므로 큰 계승도 오버플로되지 않습니다.

어떤 결과는 본질적으로 무리수입니다 — 특이값, 수많은 고유값, 임의의 각도의 사인값. 그런 경우 도구는 수치 방법으로 전환하고 그렇다고 밝히며, 근삿값을 정확한 값인 것처럼 꾸미지 않습니다.

풀이 과정 보기

모든 계산에는 풀이가 따라옵니다. 행렬 도구는 행 연산이 일어날 때마다 첨가 행렬을 보여 주고, 산술 도구는 항별로 진행됩니다 — 게다가 많은 도구는 결과를 그림으로도 그립니다: 직선, 포물선, 히스토그램, 적분 하단의 음영 영역 등. 단계에는 번호가 매겨져 있어 방법을 따라가거나 직접 결과를 확인할 수 있습니다.

알맞은 도구 찾기

  • 대수 — 역행렬, 행렬식, 행렬 연산과 거듭제곱, 연립일차방정식, 이차방정식, 완전제곱식, 직선의 방정식, 다항식 나눗셈, 인수분해, 고윳값과 고유벡터, 대각화, SVD.
  • 확률·통계 — 순열과 조합(nPr, nCr, 팩토리얼), 이항분포, 기술통계(평균, 중앙값, 최빈값, 분산, 표준편차), z 점수와 백분위수를 갖춘 정규분포.
  • 해석 — 다항식 미분과 적분, 대화형 삼각형 풀이, 단위원, 각도와 라디안, 등차·등비수열, 로그, 정확한 근호 형태의 피타고라스 정리.
  • 진법 — 2부터 36까지 임의의 진법 변환과 계산, 정확한 분수 연산, 지수, 최대공약수와 최소공배수, 백분율, 비, 소인수분해, 과학적 표기법.
  • 생활 수학 — 상환표가 있는 복리, (연속) 할인, 팁과 더치페이, 정확한 국제 계수를 사용한 단위 변환.

내부 구조

MathTools는 Nuxt와 Nuxt UI 위에서 동작합니다. 수학 자체는 작은 TypeScript 모듈에 들어 있고, 각 모듈에는 자체 단위 테스트가 있어 인터페이스와 분리해 로직을 검증할 수 있습니다.

기대가 아닌 테스트

모든 도구의 수학은 작고 순수한 TypeScript 모듈에 들어 있으며 — 각 모듈은 자체 단위 테스트를 갖추고 있습니다. 500개가 넘는 Vitest 테스트가 정확한 분수 결과, 특이 행렬·0으로 나누기·빈 입력 같은 경계 사례, 그리고 모든 도구가 실제로 단계별 풀이를 만들어 내는지 검사합니다.

바이브 코딩

솔직히 말하면 이 사이트는 바이브 코딩으로 만들어졌습니다. 사람이 아이디어를 내고 도구를 고르고 결정을 내렸고, AI가 코드와 문구, 번역의 대부분을 작성했습니다. 하지만 바이브만으로 정확성이 보장되지는 않습니다 — 그래서 수학의 모든 부분은 자신감이 아니라 위의 500개가 넘는 단위 테스트로 확정되어 있습니다.