🧮 공학용 계산기 사용 가이드 & 연산 정밀도 검증
1. 개요 및 연산 지원 범위
하루이즘 공학용 계산기는 사칙연산은 물론 삼각함수(sin, cos, tan 및 역함수), 지수·로그(ln, log), 거듭제곱, 제곱근, 팩토리얼(n!), 복합 괄호 중첩 연산을 브라우저에서 수행할 수 있는 웹 계산기입니다.
2. 각도 단위(DEG vs RAD)와 삼각함수
삼각함수 연산 시 각도 모드 설정에 유의해야 합니다.
- DEG (도 모드): 360도를 한 바퀴로 계산합니다. (예:
sin(30) = 0.5,cos(60) = 0.5) - RAD (라디안 모드): 호도법 기준(π rad = 180도)으로 계산합니다. (예:
sin(π / 6) = 0.5)
상단 DEG / RAD 토글 버튼을 통해 실시간으로 단위를 전환할 수 있습니다.
3. 정답표 및 연산 예시 (Core Logic 검증값)
| 수식 | 계산 모드 | 정확한 결과 |
|---|---|---|
0.1 + 0.2 |
표준 | 0.3 |
sin(30) |
DEG | 0.5 |
cos(0) |
DEG / RAD | 1 |
ln(e) |
표준 | 1 |
log(100) |
표준 | 2 |
2 ^ 3 |
표준 | 8 |
5! |
표준 | 120 |
(2 + 3) * 4 |
표준 | 20 |
자바스크립트의 IEEE 754 부동소수점 처리 특성상 0.1 + 0.2 연산 시 0.30000000000000004가 반환되는 문제가 발생할 수 있습니다. 본 계산기는 소수점 12자리 반올림 보정 알고리즘을 적용하여 0.3으로 정확하게 표시합니다.
4. 개발 노트 (실제로 겪은 문제)
괄호 중첩과 음수 부호 파싱: -5^2 연산이나 -(2+3)과 같은 단항 연산자(Unary Minus)와 이항 연산자의 우선순위가 겹칠 때 연산 스택이 꼬이는 문제가 있었습니다. 파서를 렉서(토크나이저) 단계에서 앞선 토큰이 연산자나 여는 괄호일 경우 단항 음수로 명시적 태깅하도록 분리하여 해결했습니다.
5. 자주 묻는 질문 (FAQ)
Q1. 계산했던 이전 수식들을 다시 볼 수 있나요?
A. 우측(모바일은 하단)의 연산 기록(History) 패널에서 최근 계산 수식과 결과 목록을 확인할 수 있으며, 항목을 클릭하면 현재 입력창으로 불러올 수 있습니다.
Q2. 아주 큰 수나 아주 작은 수는 어떻게 표시되나요?
A. 14자리 이상의 큰 수나 소수점 이하 6자리 미만의 미세한 값은 1.23e+15와 같은 지수 표기법(Scientific Notation)으로 자동 변환됩니다.
Q3. 모바일에서 버튼이 잘 눌리지 않거나 화면이 확대될 때는 어떻게 하나요?
A. 모든 계산기 버튼은 최소 44px 이상의 터치 타겟을 확보하고 있으며, 더블 탭 확대 방지 및 viewport-fit=cover 처리가 적용되어 있습니다.