수학

MATH / 초급 2번

식을 읽는 순서: 괄호 없이 묶여 있는 것들

괄호가 하나도 없는 식이 왜 한 가지 뜻으로 읽히는지, 그리고 생략된 곱셈 기호·분수선·근호·위첨자가 각각 어디까지를 묶는지를 손으로 확인합니다. 그 식을 코드 한 줄로 펴서 적을 때 괄호가 어디에 붙는지까지 봅니다.

PALDYN Team29 MIN READ

지난 글에서 = 가 "양쪽이 같다"는 주장이라는 것을 세웠습니다. 그러면 그 양쪽에 놓인 식 하나는 어떻게 읽을까요.

2+3×42 + 3 \times 4

14일까요, 20일까요. 답이 갈리는 것은 계산을 못 해서가 아닙니다. 무엇을 먼저 하는지가 정해져 있지 않으면 같은 식이 두 값을 가리키게 되기 때문입니다. 이 글은 그 순서 하나만 다룹니다. 그리고 순서보다 실제로 더 자주 발목을 잡는 것 — 괄호를 안 썼는데도 이미 묶여 있는 자리들 — 을 넷으로 나눠 봅니다.

연산의 우선순위

네 칸의 차례

수학은 이 순서를 약속으로 정해 두었습니다.

연산 우선순위

위 칸부터 차례로 하고, 같은 칸에 있는 것끼리는 왼쪽부터 합니다. 그래서 2+3×42 + 3 \times 4 는 곱셈이 덧셈보다 위 칸이므로 2+12=142 + 12 = 14 입니다. 20이 되려면 (2+3)×4(2 + 3) \times 4 라고 괄호를 적어야 합니다.

칸이 넷이라는 것은 뒤섞인 식을 만나면 볼 곳이 넷뿐이라는 뜻이기도 합니다. 2+3×42−6÷32 + 3 \times 4^2 - 6 \div 3 처럼 길어 보이는 식도 위 칸부터 차례로 걷어 내면 금방 짧아집니다. 거듭제곱을 먼저 해서 2+3×16−6÷32 + 3 \times 16 - 6 \div 3, 곱셈과 나눗셈을 해서 2+48−22 + 48 - 2, 남은 덧셈과 뺄셈을 왼쪽부터 해서 48입니다. 계산이 어려웠던 것이 아니라 어느 것부터 손댈지가 정해져 있지 않으면 시작을 못 하는 것이고, 이 표가 그 시작점을 매번 똑같이 정해 줍니다.

뺄셈과 나눗셈의 방향

'왼쪽부터'가 왜 필요했는지는 숫자로 바로 보입니다.

8÷4×28 \div 4 \times 2

왼쪽부터 하면 2×2=42 \times 2 = 4 입니다. 오른쪽부터 하면 8÷8=18 \div 8 = 1 입니다. 값이 갈립니다. 뺄셈도 같습니다.

10−3−210 - 3 - 2

왼쪽부터 하면 7−2=57 - 2 = 5, 오른쪽부터 하면 10−1=910 - 1 = 9 입니다. 반면 덧셈과 곱셈은 순서를 바꿔도 값이 같아서 이 규칙이 없어도 문제가 없습니다. 규칙이 필요했던 것은 뺄셈과 나눗셈 때문입니다.

덧셈과 곱셈이 순서에 흔들리지 않는 성질에는 이름이 있습니다. 3+5=5+33 + 5 = 5 + 3 처럼 두 수의 자리를 바꿔도 값이 같은 것을 교환법칙이라고 하고, 덧셈과 곱셈에는 있지만 뺄셈과 나눗셈에는 없습니다. 그래서 규칙이 하나 더 필요했던 쪽도 뺄셈과 나눗셈입니다.

분배법칙과 우선순위

그러면 곱셈이 덧셈보다 위 칸인 것은 그저 약속일까요, 아니면 그래야만 하는 이유가 있을까요. 3+4×23 + 4 \times 2 를 두 순서로 계산해 봅니다. 우선순위대로 하면 3+8=113 + 8 = 11 이고, 무조건 왼쪽부터 하면 7×2=147 \times 2 = 14 입니다. 둘 다 계산 자체는 막힘없이 굴러갑니다. 이 식 하나만 보면 어느 쪽도 틀렸다고 말할 수 없습니다.

갈리는 자리는 다른 데 있습니다. 2×(3+4)2 \times (3 + 4) 를 괄호를 풀어 적어 보면

2×(3+4)=2×3+2×4=6+8=142 \times (3 + 4) = 2 \times 3 + 2 \times 4 = 6 + 8 = 14

하나의 수를 괄호 안 전부에 나눠 곱하는 이 성질을 분배법칙이라고 합니다. 오른쪽의 2×3+2×42 \times 3 + 2 \times 4 는 곱셈이 덧셈보다 먼저라는 규칙 아래에서만 14가 됩니다. 무조건 왼쪽부터 하는 세계에서 같은 줄을 읽으면 6+2=86 + 2 = 8, 8×4=328 \times 4 = 32 로 32가 나옵니다. 분배법칙을 그 세계에서도 적으려면 (2×3)+(2×4)(2 \times 3) + (2 \times 4) 처럼 괄호를 두 쌍 더 붙여야 합니다.

곱셈을 위 칸에 둔 덕분에 괄호 없이 적을 수 있게 된 것이 분배법칙만은 아닙니다. 앞으로 계속 나올 2x2+3x+12x^2 + 3x + 1 같은 식이 전부 여기에 기대고 있습니다 — 곱셈과 거듭제곱이 먼저 묶여 덩어리를 만들고, 덧셈이 그 덩어리들을 이어 붙입니다. 순서 규칙은 계산을 정하는 약속이면서, 동시에 괄호를 얼마나 적게 쓰고도 식을 적을 수 있는지를 정하는 약속입니다.

(가) 생략된 곱셈

기호 없이 붙여 적는 곱

수식에서 다음은 전부 곱입니다.

3a2(x+1)ab4xy3a \qquad 2(x + 1) \qquad ab \qquad 4xy

읽는 법은 "3 곱하기 aa", "2 곱하기 (x+1)(x+1)", "aa 곱하기 bb", "4 곱하기 xx 곱하기 yy" 입니다. 눈에 보이는 기호가 없을 뿐 곱셈이 거기 있습니다.

이것이 우선순위와 어떻게 얽히는지가 중요합니다. 생략된 곱셈도 그냥 곱셈이라 3번 칸에 들어갑니다. 그러니 2+3a2 + 3a 는 2+(3×a)2 + (3 \times a) 이지 (2+3)×a(2+3) \times a 가 아닙니다. a=5a = 5 를 넣어 보면 앞의 것은 2+15=172 + 15 = 17 이고 뒤의 것은 5×5=255 \times 5 = 25 입니다.

기호를 지웠는데도 뜻이 흔들리지 않는 것은 붙여 적은 두 글자 사이에는 곱 말고 다른 것이 올 자리가 없기 때문입니다. 3a3a 를 보고 "3 더하기 aa"로 읽을 사람은 없습니다. 더하기라면 기호를 적었을 테니까요.

숫자끼리의 곱

숫자끼리는 생략할 수 없습니다. 2323 은 2 곱하기 3이 아니라 스물셋입니다. 자리를 붙여 적는 것이 이미 "십의 자리에 2, 일의 자리에 3"이라는 다른 뜻으로 쓰이고 있어서, 곱셈이 그 자리를 빼앗을 수 없습니다.

그래서 숫자와 숫자를 곱할 때는 반드시 기호를 적고, 이때 ×\times 대신 가운뎃점 ⋅\cdot 을 쓰기도 합니다. 2⋅32 \cdot 3 은 2×32 \times 3 과 같은 뜻입니다. ×\times 는 글자 xx 와 모양이 닮아서 글자가 섞인 식에서는 가운뎃점 쪽이 안전합니다.

숫자와 글자 사이, 글자와 괄호 사이, 괄호와 괄호 사이는 전부 생략할 수 있습니다. 3a3a, a(x+1)a(x+1), (x+1)(x+2)(x+1)(x+2) 가 그것입니다. 생략할 수 없는 자리는 숫자와 숫자 사이 하나뿐입니다.

(나) 분수선

위아래를 묶는 괄호

손으로 쓴 분수를 한 줄로 옮겨 적을 때 가장 흔한 사고가 여기서 납니다.

분수선은 괄호다

a+b2\frac{a + b}{2}

이 모양을 그대로 한 줄로 적으면 (a + b) / 2 입니다. a + b / 2 가 아닙니다. 분수선은 위에 적힌 것 전체와 아래에 적힌 것 전체를 각각 괄호로 묶고 있고, 한 줄로 펴는 순간 그 괄호가 눈에 보이지 않게 되기 때문에 직접 적어 줘야 합니다.

숫자를 넣으면 한 번에 끝납니다. a=4a = 4, b=6b = 6 이라 하면

  • (4+6)÷2=10÷2=5(4 + 6) \div 2 = 10 \div 2 = 5
  • 4+6÷2=4+3=74 + 6 \div 2 = 4 + 3 = 7

5와 7. 다른 식입니다.

분모 쪽의 괄호

같은 일이 아래쪽에서도 일어납니다.

1x+1\frac{1}{x + 1}

이것은 1 / (x + 1) 이지 1 / x + 1 이 아닙니다. x=3x = 3 을 넣어 보면 앞의 것은 1÷4=0.251 \div 4 = 0.25 이고 뒤의 것은 1÷3+1≈1.3331 \div 3 + 1 \approx 1.333 입니다. 값이 다섯 배 넘게 벌어집니다.

위아래가 둘 다 여러 항이면 괄호가 두 쌍 필요합니다. a+bc+d\dfrac{a+b}{c+d} 는 (a + b) / (c + d) 입니다. 한 줄로 펼 때 괄호를 몇 쌍 적어야 하는지는 세어 보면 됩니다 — 분수선 위와 아래를 각각 보고, 그 안이 덧셈이나 뺄셈으로 이어진 여러 덩어리면 괄호가 필요하고 덩어리 하나면 필요 없습니다. 2x3\dfrac{2x}{3} 의 위는 곱 하나라 2*x / 3 으로 충분합니다.

(다) 함수 이름과 근호

수식에는 괄호 없이도 뒤쪽을 덮는 기호가 몇 개 있습니다. 이 절에서는 그것들이 무슨 계산인지는 전혀 다루지 않습니다. 선이 어디까지 덮는가만 봅니다.

함수 이름이 덮는 덩어리

함수 이름은 바로 뒤에 붙은 덩어리 하나를 덮습니다.

  • sin⁡2x\sin 2x 는 sin⁡(2x)\sin(2x) 입니다. 2x2x 가 곱으로 한 덩어리라 통째로 들어갑니다.
  • sin⁡x+1\sin x + 1 은 (sin⁡x)+1(\sin x) + 1 입니다. sin⁡(x+1)\sin(x+1) 이 아닙니다. 덧셈은 덩어리를 묶어 주지 못합니다.
  • log⁡ab\log ab 는 log⁡(ab)\log(ab) 입니다. abab 가 곱이라 한 덩어리입니다.

헷갈릴 때는 괄호를 적으면 됩니다. 실제로 많은 책이 sin⁡(2x)\sin(2x) 라고 괄호를 적어 줍니다. 덩어리를 만드는 것은 곱이고 덧셈은 덩어리를 끊습니다 — 이 한 줄이 위 셋을 전부 설명합니다.

근호의 지붕

근호는 지붕이 덮은 만큼만 덮습니다. 이것은 손으로 쓴 모양을 보면 분명한데 한 줄로 옮기면 사라집니다.

a+b와a+b\sqrt{a} + b \qquad \text{와} \qquad \sqrt{a + b}

앞의 것은 aa 에만 지붕이 있고 bb 는 밖에 있습니다. 뒤의 것은 지붕이 a+ba+b 전체를 덮습니다. 한 줄로 적으면 각각 sqrt(a) + b 와 sqrt(a + b) 입니다. 분수선과 완전히 같은 이야기입니다 — 손글씨에서 선의 길이가 하던 일을 한 줄에서는 괄호가 대신합니다.

근호가 덮는 범위

지붕이 어디까지인지 헷갈릴 일이 손글씨에서는 거의 없습니다. 선을 그은 만큼이 그대로 보이니까요. 그런데 인쇄된 식에서는 지붕이 짧아 보여 헷갈리는 자리가 생깁니다. 3y\sqrt{3}y 와 3y\sqrt{3y} 가 그렇습니다. 앞의 것은 지붕이 3에만 있고 yy 는 밖에서 곱해진 것이고, 뒤의 것은 3y3y 가 통째로 근호 안입니다. 이럴 때도 답은 같습니다 — 지붕의 오른쪽 끝이 어디서 멈추는지만 보면 됩니다.

(라) 위첨자와 아래첨자

거듭제곱 표기

위첨자는 같은 것을 몇 번 곱했는지를 적은 것입니다.

a2=a×aa3=a×a×aa^2 = a \times a \qquad a^3 = a \times a \times a

a2a^2 는 "aa 의 제곱" 또는 "aa 의 2승"이라고 읽고, aa 를 두 번 곱했다는 뜻입니다. 23=2×2×2=82^3 = 2 \times 2 \times 2 = 8 입니다. 이 약속 하나면 앞으로 나올 23×32×52^3 \times 3^2 \times 5 같은 표기를 읽을 수 있습니다 — 2를 세 번, 3을 두 번, 5를 한 번 곱했다는 뜻이니 8×9×5=3608 \times 9 \times 5 = 360 입니다. 5번 · 약수와 배수·소인수분해에서 이 모양을 계속 쓰게 됩니다. 지수를 다루는 규칙들과 a0a^0·음의 지수는 13번 · 거듭제곱과 근호의 몫입니다.

위첨자가 우선순위 표의 둘째 칸에 있다는 것도 여기서 챙겨 둡니다. 2×322 \times 3^2 은 2×9=182 \times 9 = 18 이지 62=366^2 = 36 이 아닙니다. 거듭제곱은 곱셈보다 먼저라, 붙어 있는 위첨자가 바로 아래 것에만 작용하고 나서 곱셈이 일어납니다.

−22-2^2 와 (−2)2(-2)^2

위첨자도 덮는 범위가 있습니다. 그리고 그 범위가 우선순위와 겹쳐 있어 부호가 붙으면 갈립니다.

−22와(−2)2-2^2 \qquad \text{와} \qquad (-2)^2

앞의 것은 위첨자가 22 에만 붙어 있고 앞의 부호는 밖에 있습니다. 거듭제곱이 위 칸이므로 222^2 을 먼저 하고 그 결과에 부호를 붙입니다. 뒤의 것은 괄호가 −2-2 를 한 덩어리로 묶었으니 그 덩어리를 두 번 곱합니다. 덮는 범위가 다르므로 다른 식입니다.

두 값이 각각 얼마인지는 여기서 계산하지 않습니다 — 음수끼리 곱하면 무엇이 되는지를 아직 세우지 않았고, 그것은 10번 · 수의 종류와 수직선의 몫입니다. 지금 챙길 것은 괄호가 있고 없고에 따라 위첨자가 덮는 것이 달라진다는 것, 그리고 −22-2^2 을 "마이너스 2의 제곱"이라고 읽으면 뒤의 것과 구별되지 않으니 "2의 제곱에 마이너스" 라고 읽어야 한다는 것입니다.

xix_i 와 xix^i

앞 소절이 우선순위 이야기였다면 이번 것은 순전히 표기 이야기입니다. 같은 글자에 붙는 작은 글자가 위에 있느냐 아래에 있느냐로 완전히 다른 두 가지를 가리킵니다.

x1,  x2,  x3,  …,  xnx_1, \; x_2, \; x_3, \; \dots, \; x_n

아래첨자는 곱이 아니라 이름표입니다. xnx_n 은 "xx 곱하기 nn"이 아니라 "xx 들 중 nn 번째"라는 뜻입니다. 이름이 xx 하나뿐인데 그런 것이 여럿 필요할 때, 새 글자를 계속 만드는 대신 번호를 붙여 구별하는 장치입니다.

xix^i 는 반대로 계산입니다. xx 를 ii 번 곱하라는 뜻이고, xx 가 3이고 ii 가 2면 9라는 수 하나가 나옵니다. xix_i 는 ii 를 정해도 수가 나오지 않습니다 — x2x_2 가 얼마인지는 누군가 따로 정해 줘야 알 수 있습니다.

모양 읽는 법 정체
xix_i "xx 아이" · "xx 들 중 ii 번째" 이름
xix^i "xx 의 ii 승" 계산

작은 글자가 위아래 어느 쪽인지만 보면 되므로 구별 자체는 쉽습니다. 문제는 한 줄로 옮겨 적을 때 위아래가 사라진다는 것이고, 그 자리를 다음 절에서 봅니다.

코드 한 줄로 옮겨 적기

여기까지가 수식을 읽는 법입니다. 그런데 수식을 한 줄에 늘어놓아야 하는 자리가 있습니다. 코드가 그렇고, 계산기 입력창이 그렇고, 메신저로 식을 적어 보낼 때가 그렇습니다. 손으로 쓴 모양에서 선의 길이와 글자의 높낮이가 하던 일을 한 줄에서는 전부 괄호와 기호가 대신해야 합니다.

수식을 한 줄로 펴면 괄호를 적어야 하는 자리

한 줄로 펴면 사라지는 것

한 줄로 옮길 때 잃어버리는 것이 정확히 넷이고, 앞에서 본 넷과 같습니다.

손으로 쓴 모양 무엇이 묶고 있었나 한 줄에서는
3a3a 붙여 적은 것이 곱 3 * a
a+b2\dfrac{a+b}{2} 분수선의 길이 (a + b) / 2
a+b\sqrt{a+b} 근호의 지붕 sqrt(a + b)
xix_i · xix^i 작은 글자의 높낮이 x[i] · x ** i

곱셈 기호를 되살려야 하는 것이 가장 자주 잊히는 자리입니다. 코드에서 3a 라고 적으면 계산이 틀리는 것이 아니라 문장 자체가 성립하지 않아 그 줄에서 멈춥니다.

(a + b) / 2 와 a + b / 2

이 둘은 코드에서도 멀쩡히 돌아가고 둘 다 숫자를 내놓습니다. 틀렸다는 표시가 어디에도 안 뜹니다. 그래서 분수선을 옮겨 적다 괄호를 빠뜨리면, 프로그램은 조용히 다른 값을 계속 내놓습니다.

a, b = 4, 6
print((a + b) / 2)   # 5.0
print(a + b / 2)     # 7.0

앞에서 손으로 구한 5와 7이 그대로 나옵니다. 코드가 수학과 다른 순서를 쓰는 것이 아니라, 같은 순서를 쓰기 때문에 괄호를 빠뜨린 줄이 7을 내놓는 것입니다.

부호와 거듭제곱도 같습니다.

print(-2 ** 2)       # -4
print((-2) ** 2)     # 4

앞 절에서 "값은 나중에 세운다"고 미뤄 둔 그 두 값입니다. 여기서는 수를 외우지 말고 둘이 다른 값이라는 사실만 챙기면 됩니다.

첨자와 거듭제곱

작은 글자의 높낮이는 한 줄에서 가장 크게 모양이 바뀌는 자리입니다.

  • 아래첨자 xix_i 는 대괄호로 적습니다 — x[i]. 이름표이므로 값이 아니라 자리를 가리키는 표기를 씁니다.
  • 위첨자 xix^i 는 별표 둘로 적습니다 — x ** i. 계산이므로 연산 기호가 붙습니다.

x\sqrt{x} 도 한 줄에서는 이름을 가진 함수가 됩니다 — sqrt(x). 근호의 지붕이 괄호로 바뀐 것뿐이고, 그래서 지붕이 어디까지였는지를 옮겨 적는 사람이 직접 판단해 괄호를 쳐야 합니다.

한 줄로 옮긴 뒤에는 숫자를 하나 넣어 맞춰 보는 것이 가장 빠릅니다. a+b2\dfrac{a+b}{2} 에 a=4a=4, b=6b=6 을 넣으면 5여야 하니, 한 줄로 적은 것이 7을 내놓으면 거기서 틀린 것입니다. 이 확인 방법은 다음 글에서 검산 습관으로 다시 세웁니다.

연습 문제

연습 1 — 괄호를 채워 뜻을 확정하기

다음 열 개의 식에 괄호를 채워 계산 순서를 눈에 보이게 적고, 값을 구하세요.

  1. 7+2×57 + 2 \times 5
    7+(2×5)=177 + (2 \times 5) = 17 입니다.
  2. 18÷3×218 \div 3 \times 2
    (18÷3)×2=12(18 \div 3) \times 2 = 12 입니다.
  3. 14−5−314 - 5 - 3
    (14−5)−3=6(14 - 5) - 3 = 6 입니다.
  4. 2×322 \times 3^2
    2×(32)=182 \times (3^2) = 18 입니다.
  5. 3+4×5−63 + 4 \times 5 - 6
    (3+(4×5))−6=17(3 + (4 \times 5)) - 6 = 17 입니다.
  6. 12÷3+112 \div 3 + 1
    (12÷3)+1=5(12 \div 3) + 1 = 5 입니다.
  7. 2+2×222 + 2 \times 2^2
    2+(2×(22))=102 + (2 \times (2^2)) = 10 입니다.
  8. 5×2+3×45 \times 2 + 3 \times 4
    (5×2)+(3×4)=22(5 \times 2) + (3 \times 4) = 22 입니다.
  9. 100÷5÷2100 \div 5 \div 2
    (100÷5)÷2=10(100 \div 5) \div 2 = 10 입니다.
  10. 1+2×3×41 + 2 \times 3 \times 4
    1+((2×3)×4)=251 + ((2 \times 3) \times 4) = 25 입니다.

연습 2 — 분수를 한 줄로 옮겨 적기

다음 다섯 개를 괄호를 써서 한 줄로 적으세요.

  1. a+b2\dfrac{a + b}{2}
    (a + b) / 2 입니다.
  2. 2x−3\dfrac{2}{x - 3}
    2 / (x - 3) 입니다.
  3. 2x+13\dfrac{2x + 1}{3}
    (2*x + 1) / 3 입니다.
  4. xy+z\dfrac{x}{y + z}
    x / (y + z) 입니다.
  5. a+bc+d\dfrac{a + b}{c + d}
    (a + b) / (c + d) 입니다.

3번에서 곱셈 기호를 되살려 적은 것에 주의하세요. 2x2x 는 곱이므로 한 줄로 옮길 때 2*x 가 됩니다.

연습 3 — 겉보기에 비슷한 다섯 쌍

각 쌍의 두 값을 구해서, 두 식이 같지 않다는 것을 확인하세요.

  1. 3⋅223 \cdot 2^2 와 (3⋅2)2(3 \cdot 2)^2
    3×4=123 \times 4 = 12 와 62=366^2 = 36 입니다.
  2. (4+6)÷2(4 + 6) \div 2 와 4+6÷24 + 6 \div 2
    55 와 77 입니다.
  3. 8−3+18 - 3 + 1 와 8−(3+1)8 - (3 + 1)
    5+1=65 + 1 = 6 과 8−4=48 - 4 = 4 입니다.
  4. 12÷2×312 \div 2 \times 3 와 12÷(2×3)12 \div (2 \times 3)
    6×3=186 \times 3 = 18 과 12÷6=212 \div 6 = 2 입니다.
  5. 5+2×65 + 2 \times 6 와 (5+2)×6(5 + 2) \times 6
    1717 와 4242 입니다.

다섯 쌍 모두 괄호 하나가 값을 바꿉니다. 앞에서 본 −22-2^2 와 (−2)2(-2)^2, a+b\sqrt{a} + b 와 a+b\sqrt{a+b} 도 같은 이유로 다른 식이지만, 그 값을 확인하는 것은 음수와 근호를 세운 뒤의 일이라 여기서는 읽는 법만 챙겨 둡니다.

연습 4 — 소리 내어 읽기

식을 말로 옮기는 연습입니다. 앞의 셋이 손으로 적는 연습이었다면 이번 것은 입으로 읽는 연습입니다. 소리 내어 읽을 수 있으면 어디까지가 한 덩어리인지를 이미 안 것이고, 읽다가 막히면 그 자리가 아직 안 잡힌 자리입니다.

다음 다섯 개를 소리 내어 읽고, 읽은 말을 그대로 적으세요. 괄호도 "괄호 열고 · 괄호 닫고"로 읽습니다.

  1. 5(y−2)5(y - 2)
    "5 곱하기 괄호 열고 yy 빼기 2 괄호 닫고"입니다. 곱셈 기호가 생략되어 있으므로 "곱하기"를 살려 읽습니다.
  2. x−14\dfrac{x - 1}{4}
    "xx 빼기 1을 4로 나눈 것"입니다. 위쪽 전체가 한 덩어리라 "xx 빼기, 1을 4로 나눈 것"으로 끊어 읽으면 다른 식이 됩니다.
  3. 2x\sqrt{2x}
    "2 xx 의 제곱근"입니다. 지붕이 2x2x 전체를 덮고 있어 2x2x 가 통째로 근호 안입니다.
  4. b5b_5
    "bb 들 중 다섯 번째"입니다. "bb 곱하기 5"가 아닙니다.
  5. (x+1)3(x + 1)^3
    "괄호 열고 xx 더하기 1 괄호 닫고, 의 세제곱"입니다. 괄호가 덩어리를 만들었으므로 그 덩어리를 세 번 곱한다는 뜻입니다.

다섯 개 모두 어디서 끊어 읽느냐가 곧 어디까지가 한 덩어리냐입니다. 읽다가 어색하면 대개 덩어리를 잘못 잡은 것이니, 그때 괄호를 적어 넣고 다시 읽으면 됩니다.

정리

  • 순서는 괄호 → 거듭제곱 → 곱셈·나눗셈 → 덧셈·뺄셈이고, 같은 칸이면 왼쪽부터입니다. '왼쪽부터'가 필요했던 것은 뺄셈과 나눗셈이 순서를 바꾸면 값이 달라지기 때문입니다.
  • 괄호를 안 썼는데도 이미 묶여 있는 자리가 넷 있습니다 — 생략된 곱셈, 분수선, 함수 이름과 근호, 위첨자.
  • 위첨자 a2a^2 는 같은 것을 두 번 곱했다는 뜻이고, 아래첨자 ana_n 은 곱이 아니라 이름표입니다. 작은 글자가 위에 있으면 계산이고 아래에 있으면 이름입니다.
  • 곱셈이 덧셈보다 먼저인 것은 분배법칙을 괄호 없이 적을 수 있게 하는 선택이었습니다. 그 순서 덕분에 2x2+3x+12x^2 + 3x + 1 같은 식이 괄호 없이 적힙니다.
  • 한 줄로 옮길 때는 선의 길이와 글자의 높낮이가 하던 일을 괄호와 기호가 대신합니다 — 3 * a, (a + b) / 2, sqrt(a + b), x[i], x ** i.

읽는 법은 여기까지입니다. 다음 글은 반대 방향 — 어떻게 적을 것인가입니다. 계산이 틀렸을 때 어느 줄에서 틀렸는지 찾을 수 있게 적는 방법과, 답을 얻은 뒤 숫자로 검산하는 습관을 세웁니다.


읽어주셔서 감사합니다. 😊

LATEST

수학의 최신 글

수학2026.09.07

양자화 오차: 격자 사상, 오차 분산, 이상치 채널

실수를 2^b개 격자에 사상할 때 오차의 분산이 왜 Δ²/12인지 유도하고, 그것이 비트당 6.02dB라는 SNR로 번역되는 과정을 실측과 대조했습니다. 이상치 하나가 나머지 값의 유효 비트를 어떻게 먹는지, 그리고 int4에서 성능이 무너지는 지점을 오차 예산으로 미리 계산하는 법까지.

중급18 MIN
수학2026.09.07

수치적으로 안정한 계산 패턴 모음

최댓값 빼기, 로그 공간, log1p·expm1, 분산의 두 공식, 정규화의 ε, fp32 누산, 역행렬 대신 solve — 프레임워크가 몰래 해 주는 일곱 가지를 하나씩 꺼내 각각 어떤 고장을 막는지 직접 재 봤습니다. 수식을 그대로 옮긴 코드가 왜 라이브러리보다 나쁜지에 대한 목록입니다.

중급22 MIN
수학2026.09.07

부동소수점은 어디서 새는가: 반올림, 상쇄, 더하는 순서

0.1 + 0.2가 0.3이 아닌 이유부터 시작해 머신 엡실론을 유도하고, 같은 16비트인데 fp16과 bf16이 서로 다른 지점에서 터지는 이유, 비슷한 수를 뺄 때 유효자리가 사라지는 파괴적 상쇄, 그리고 1,000만 개를 순서만 바꿔 더했을 때 오차가 백만 배 갈리는 실험까지 직접 재 봤습니다.

중급23 MIN