수식 계산기

사칙연산·거듭제곱·괄호·함수·상수를 입력하면 즉시 안전하게 계산해 드립니다.

예시: 2+3*4, sqrt(16)+sin(pi/2), 2^10, 5!, log2(8), cbrt(27)
eval을 사용하지 않고 자체 파서로 계산합니다. 삼각함수 각도 단위는 위에서 선택할 수 있으며, 모든 계산은 브라우저에서 처리됩니다.

수식 계산기란?

수식 계산기는 2+3*4처럼 키보드로 입력한 수식을 곧바로 계산해 주는 도구입니다. 일반 계산기와 달리 괄호와 연산 우선순위를 그대로 인식하고, 제곱근·삼각함수·로그 같은 공학용 함수와 원주율(pi) 같은 상수까지 한 줄에 섞어 쓸 수 있습니다.

지원 연산자

  • + − * / : 더하기, 빼기, 곱하기, 나누기
  • % : 나머지(예: 10 % 3 = 1)
  • ^ : 거듭제곱(예: 2^10 = 1024)
  • ( ) : 괄호로 우선순위 지정
  • 단항 음수 : -5, -(2+3)

지원 함수 · 상수

  • sqrt(x) 제곱근, cbrt(x) 세제곱근, abs(x) 절댓값, exp(x) 지수
  • sin(x) · cos(x) · tan(x) 삼각함수(라디안/도 선택)
  • log(x) 상용로그(밑 10), log2(x) 밑 2 로그, ln(x) 자연로그
  • floor(x) · ceil(x) · round(x) 내림 · 올림 · 반올림
  • pow(a, b) a의 b제곱, x! 팩토리얼, min(...) · max(...) 최소 · 최대
  • pi ≈ 3.141592, e ≈ 2.718281

연산 우선순위와 계산 방식

입력한 수식은 자바스크립트의 eval 없이 자체 재귀하강 파서로 해석합니다. 토큰으로 잘라 문법 구조를 만든 뒤 계산하므로, 임의의 코드가 실행될 여지가 없습니다. 우선순위는 수학에서 쓰는 순서와 같습니다.

  • 괄호 ( ) 안이 가장 먼저 계산됩니다.
  • 다음이 팩토리얼 !, 그다음이 거듭제곱 ^입니다. 거듭제곱은 오른쪽부터 묶여서 2^3^2는 512가 됩니다.
  • 그다음이 곱셈·나눗셈·나머지(* / %), 마지막이 덧셈·뺄셈(+ -)입니다.
  • 결과는 소수점 열째 자리에서 반올림한 뒤 천 단위마다 쉼표를 넣어 표시합니다.

입력 예시

수식결과
2+3*414 (곱셈이 먼저)
(2+3)*420
2^101,024
sqrt(16)+cbrt(27)7
5!120
log2(1024)10
max(3, 7, 5) - min(3, 7, 5)4
sin(pi/2)1 (라디안 기준)

입력칸에서 엔터를 누르거나 다른 곳을 클릭하면 그 수식이 계산 기록에 최근 10개까지 쌓입니다. 기록의 항목을 클릭하면 해당 수식이 입력칸에 다시 채워져 값만 바꿔 가며 반복 계산하기 편합니다. 기록은 화면에만 남고 새로고침하면 사라집니다.

자주 하는 실수와 주의점

  • 곱셈 기호는 생략할 수 없습니다. 2(3+4)는 오류이고 2*(3+4)로 적어야 합니다.
  • %는 백분율이 아니라 나머지 연산입니다. 10 % 3은 1이 됩니다.
  • log는 밑이 10인 상용로그입니다. 밑이 2면 log2, 자연로그는 ln을 쓰세요.
  • 삼각함수 각도 단위를 라디안으로 둔 채 sin(30)을 넣으면 30도가 아니라 30라디안으로 계산됩니다. 선택 상자에서 도(deg)로 바꾸거나 sin(30 * pi / 180)처럼 직접 환산하세요.
  • 팩토리얼은 0 이상의 정수에만 쓸 수 있고, 171! 부터는 부동소수 한계를 넘어 무한대로 표시됩니다.
  • 0으로 나누면 오류가 아니라 무한대가 나오고, 0/0처럼 정의되지 않는 계산은 오류로 안내합니다.

자주 묻는 질문

어떤 연산자와 함수를 지원하나요?

사칙연산(+ - * /), 나머지(%), 거듭제곱(^), 팩토리얼(!), 괄호, 단항 음수를 지원합니다. 함수는 sqrt, cbrt, abs, exp, sin, cos, tan, log, log2, ln, floor, ceil, round, pow, min, max를 제공하며 상수 pi와 e를 쓸 수 있습니다.

삼각함수의 각도 단위는 무엇인가요?

기본값은 라디안입니다. 삼각함수 각도 단위 선택 상자에서 도(deg)로 바꾸면 sin(30)이 0.5로 계산됩니다. 라디안 상태로 두고 도 단위를 쓰려면 sin(30 * pi / 180)처럼 직접 환산하면 됩니다.

계산 결과가 안전한가요?

자바스크립트의 eval을 사용하지 않고 자체 구현한 재귀하강 파서로 수식을 해석합니다. 모든 계산은 브라우저 안에서만 처리되며 입력값은 서버로 전송되거나 저장되지 않습니다.

잘못된 수식을 입력하면 어떻게 되나요?

괄호가 맞지 않거나 인식할 수 없는 문자·함수가 있으면 빨간색으로 무엇이 문제인지 알려 줍니다. 0으로 나누면 결과가 무한대로 표시되고, 값을 정할 수 없는 계산은 오류로 표시됩니다.

곱셈 기호를 생략해도 되나요?

아니요. 2(3+4)처럼 곱셈 기호를 생략하면 수식을 끝까지 해석하지 못했다는 오류가 납니다. 2*(3+4)처럼 별표를 반드시 넣어 주세요.

log는 밑이 몇인가요?

log는 밑이 10인 상용로그입니다. 밑이 2인 로그는 log2, 자연로그는 ln을 사용하세요. 다른 밑이 필요하면 ln(x)/ln(밑) 형태로 계산하면 됩니다.

계산 기록은 어디에 저장되나요?

엔터를 누르거나 입력칸을 벗어날 때 최근 10개까지 화면에만 쌓입니다. 항목을 클릭하면 그 수식을 다시 불러올 수 있고, 페이지를 새로고침하면 기록은 사라지며 서버에도 저장되지 않습니다.

결과 숫자는 어떤 형식으로 표시되나요?

소수점 열째 자리에서 반올림한 뒤 천 단위마다 쉼표를 넣어 보여 줍니다. 팩토리얼은 0 이상의 정수에만 사용할 수 있고 171! 부터는 부동소수 한계를 넘어 무한대로 표시됩니다.