48÷2(9+3)

1 개요

48÷2(9+3) = ?

2011년 초반 인터넷을 달구었던 수학 떡밥. 미국의 한 수학 시험에 출제된 문제로 분명히 수식만 보면 단순해보이나, 실은 이것을 어떻게 해석하느냐에 따라 답이 2와 288로 나뉘게 되어 어느 쪽이 답인가에 대한 논쟁이 일어났다. 결국 미국의 한 인터넷 커뮤니티에서 전파되어 곧 전 세계 커뮤니티와 학계를 뒤흔들고 있는 희대의 수학 떡밥이 되었다.

600px
공학용 계산기 간에도 계산 순서가 다르게 설정되어 있기 때문에 서로 다른 답을 보여준다. #
이를 풀어내기 위해 매스매티카, 파이썬 같은 프로그래밍 언어와 각 회사의 공학 계산기들이 총동원되어 각자 다른 답과 해석을 내놓았으며, 대학교수들의 자문까지 얻으며 2파와 288파로 나뉘어 논쟁이 점점 더 카오스화 되어가고 있다. 한 술 더 떠서 아예 문제 자체에 오류가 있으므로 답이 없기 때문에 캐리어 가야 한다고 주장하는 사람들도 이 논쟁에 가세했다.[1]

더 정확히 말하자면 이 것은 문제로서 성립하지 못한다.
이 문제의 핵심은 위 사진에 나온 규칙 7에도 나온 multiplication by juxtaposition[2](이후 MoJ로 표기.)의 애매모호함이다. 이 MoJ는 계산을 간략히 표기하기 위한 일종의 관습이기도 한데, 이 것을 곱셈 연산 *의 또다른 표기로 보느냐, *와 연산 결과는 같으나 연산의 우선순위는 다른 별도의 연산으로 보느냐에 따라 계산 결과가 달라진다.
아래에 나오는 사람들의 주장도 MoJ와 곱셈, 나눗셈은 동등한 우선순위를 지닌다, MoJ는 곱셈, 나눗셈에 우선한다를 상세하게 예시를 들어 주장하고 있을 뿐이다.

결론: MoJ를 *의 또다른 표기로 볼 때 288, MoJ를 곱셈, 나눗셈보다 우선순위가 높은 새로운 연산으로 볼 때 2, 원리원칙대로는 답이 없음.

2 각 답에 대한 사람들의 주장

2.1 답은 2이다

48÷2와 (9+3) 사이에 곱셈 기호가 없기 때문에 2(9+3)을 한 항으로 간주하여 먼저 계산하여야 한다. 그러므로 48 ÷ {2(9+3)} = 48 ÷ 24 = 2이다.

2를 지지하는 사람들은 미국 수학협회의 "multiplication indicated by juxtaposition is carried out before division."이라는 규정을 든다. 곱셈 기호가 생략된 병렬항의 경우는 나눗셈에 앞선다는 규정이다. 이 때문에 2(9+3)을 먼저 계산하고 나눗셈을 해야 한다라고 주장한다.

단, 위의 출처라고 할 수 있는 글은 AMS소스가 삭제돼있고, 구글 등 검색엔진에도 AMS소스는 없다. 웹아카이브를 통해 검색한 결과 2001년 까지는 위의 내용이 있었으나 변경된 것으로 확인되었다.

러셀화이트헤드Principles of Mathematics에도 답이 2라는 주장을 뒷받침하는 규정이 제시되어 있다고 주장한다. 여기서는 "병치로 표시된 곱셈은 나눗셈 이전에 수행한다. 그러므로, 일반적으로, 임의의 a, b, c에 대하여 a/bc=a/(bc)가 될 것이다. (단, b와 c는 0이 아니다)" 라고 설명한다.[3][4][5]

또한 이들은 "288이 답이 되려면 1÷2x = 0.5x 도 맞아야 한다."라는 반례를 들기도 한다. 저렇게 적은 경우 x를 분모의 위치로 취급하기 때문에 (9+3)역시 마찬가지라는 주장이다. 위 출처글의 경우, 6÷2*3의 경우와 a÷bc(단, a=6,b=2,c=3)의 경우 왜 답을 다르게 인식하느냐 하는 예시를 문제로 제시한다. 전자의 경우 순서대로 계산하여 답이 9라고 대답하지만, 후자의 경우 bc가 같이 분모가 되는 것으로 보아 1이라고 대답한다는 것. 하지만 매스매티카에서는 1/2x를 친히 x/2로 계산해주신다.. 응?

일부 공학용 계산기(샤프제 공학계산기, 카시오 계산기 중 일부[6])에 저 수식 그대로 집어넣으면 답이 2라고 나온다. 2를 출력하는 계산기의 경우 48÷2*(9+3)으로 입력하면 역시 288을 출력한다. 즉 이는 생략된 곱셈기호를 계산하는 다른 연산원칙을 따로 지정해주었음을 의미. 앞에서 한 주장과 일치된다.

Maple 14 에서는 48/2(9+3) 을 입력하게 되면

48/(2*(9+3));

print(`output redirected...`); # input placeholder
2

이렇게 자동으로 2와 (9+3)를 ()로 묶어서 계산하게 된다.

참고로 이것은 위에서 언급한 MoJ를 나눗셈보다 우선하여 연산을 수행한 것이다.

4월 11일에는 2를 뒷받침하는 수학 교과서 내용과 강사의 설명 동영상을 모은 이 올라왔고, 4월 13일에는 뉴욕 시립대 대수학 교재를 인용한 이 올라왔다.

참고로 카시오 공학계산기는 이것을 한 항으로 인식해 2로 계산한다. 단 같은 카시오라도 288로 계산하는 물건이 있고(85ES 등), 2로 계산하는 모델이 있다(570ES 등).

2.2 답은 288이다

48÷2와 (9+3) 사이에는 곱셈 기호가 생략되어 있을 뿐이다.[7] 사칙연산에서 곱셈과 나눗셈은 왼쪽부터 계산한다. 그러므로 48 ÷ 2 × (9+3) = 288이다.

288을 지지하는 사람들은 '답은 2이다'라는 계산법은 곱셈이 생략되었다는 이유로 기존의 연산식에 없는 괄호를 추가하고, 곱셈과 나눗셈을 오른쪽부터 계산하는 오류를 범하므로 틀렸다고 주장한다.

덧붙여 위의 수식을 구글 또는 울프람알파와 같은 수식을 계산해 줄 수 있는 엔진[8]에 붙여넣을 경우 288이 나온다. 일부 공학용 계산기(TI-83, TI-84, TI-86, TI-89, TI-Nspire)와 스마트폰도 이 답을 출력한다. #. 미국 대학 칼큘러스 시간에 일반적으로 가장 많이 쓰이는 그래핑 계산기인 TI-84 역시 288이라는 답을 내놓았다.

2를 지지하는 사람들이 언급하는 "1/2x = 0.5x?" 에 대해서는, 문자일때는 2를 계수로 가진 x가 분모로 취급되지만 이번 케이스와 같은 상수에서는 계산 우선권이 없다고 주장한다. 단 이렇게 주장할 경우, 상수를 문자로 치환하거나 그 반대의 경우 계산식의 답이 달라진다는 결과를 낳는 치명적인 문제가 있다. 그 때문에 상수만 존재하는 식에서 곱셈기호를 생략해 병치형태로 표기할 수 없다는, 즉 수식 자체가 잘못되었다는 주장이 힘을 얻는다

밑에 인용되어 있듯이 스탠다드 방식으로는 그대로 왼쪽에서 오른쪽으로 계산하여 288이 답인 것이 맞는다고도 주장한다.

참고로, 한국교육과정평가원[9]에서는 우리나라 교육과정상 288이 맞다는 답변을 내놓았다. # 그런데 얘네는 지들이 만든 교과서도 안 읽어보는 애들인데...?[10]

2.3 수식 자체가 잘못되었다

사실 엄밀히 말해 정답은 이쪽이다.

이 식은 연산의 정의를 제대로 하지 않았다. a*b를 ab로 쓰는 등, 문자로 표시되는 양을 곱하는 경우는, 곱셈 기호를 생략하는 것이 일반적으로 쓰이고 있다. 하지만 이것을 단순히 곱셈 기호를 생략한 것으로 볼지, 아니면 곱셈과 동일한 결과를 낳는 새로운 연산으로 볼지에 대한 공식적 합의가 없다. 즉, 연산이 정의되지 않아서, 풀 수가 없다.

실제로 MS Office 엑셀[11] 또는 MATLAB을 이용하여 위의 수식을 계산해보면 오류를 출력하는 것을 볼 수 있다. 즉, 표기의 오류 때문에 위의 식에서 48÷2(9+3)을 한 항으로 해석해야 하는가, 아니면 독립된 항으로 해석해야 하는가에 대한 논란이 일어난 것이다.

게다가, 이 식이 숫자만 있는 항에서 곱셈기호를 생략한 것도 문제를 키웠다. 숫자 대신 기호를 가지고 계산할 때, 곱셈 기호를 생략하는 경우, 곱셈 기호 '*' 대신 점 '·'으로 곱셈을 나타내는 경우도 있는데, 이 페이지처럼 곱셈 기호 생략이나 점으로 대체하는 경우를, 곱셈 기호보다 우선하는 경우가 많기 때문에,[12] 그나마 주류가 형성될 가능성이라도 있지만, 숫자들의 계산에서는 곱셈 기호를 생략하는 경우가 없어서...

연산 우선순위가 확립하지 않는데, 그것을 어기고 연산한 결과이다. 즉 연산 우선순위를 어떻게 정하느냐에 따라 어느 쪽도 답이 될 수 있다.
링크에 비슷한 사례가 있다.
Modern textbooks seem to agree that all multiplications and divisions should be performed in order from left to right. However, in Florida Algebra I published by Prentice Hall (2011), a problem asks the student to evaluate 3st2 ÷ st + 6 for given values of the variables, and the answer provided comes from dividing by st. A representative for the publisher has acknowledged that the expression is ambiguous and promises to use (st) in the next revision.[13]

550px
또한 메가스터디의 수리 영역 박승동강사도 대답할 가치조차 없는 문제라고.
오오 설수교 수석 승동갑 (9+3)이 아니라 (19+3)라고 써서 대답해주지않는걸지도 모른다.

네이버 캐스트에서 2009년에 사칙연산에 대한 글을 다룬 적이 있는데, 2년이 지나서 이 문제가 떡밥이 되자 그 글에 내용을 추가해서 수식의 잘못을 탓하여 이 논쟁에 젓가락을 얹었다. #

3 약간 더 자세한 설명

이 문제의 핵심은 연산자 우선 순위에 관련된 형식 문법(Formal grammar)을 어떻게 정의하느냐에 있다. 수학 수식 역시 형식 언어의 일부로 간주될 수 있는데, 이 때 이 수식을 의미론적으로 어떤 의미를 가지는 형태로 변환해야 하느냐에 대한 논쟁인 것이다.

유사한 문제로는 프로그래밍 언어의 수식을 어떻게 해석하느냐의 문제가 있는데, 이 동네에서는 형식 언어론에 의해 언어 자체적으로 엄밀하게 정의한 문법에 기반하여 해석한 뒤, 이를 모호함이 없는 형태의 수식[14]으로 변환하여 처리하므로 이런 문제는 발생하지 않는다. (위에서 언급된 수학 프로그램/계산기는 자체적으로 정의한 문법을 토대로 수식 해석기를 만들어 쓰는데, 이 문법이 서로 다른 것 뿐이다.)

이는 기준이 될 수 있는 문법이 없기 때문에 발생하는 단순 표기법의 문제이며, 실제 문제의 본질과는 아무런 관련이 없다. 즉, 학계에 통용되는 표준 문법이 있다면 이런 문제 자체가 있을 이유가 없지만, 안타깝게도 수학계 전반에서 통용되는 표준 문법이란 현 시점에는 존재하지 않고, 앞으로도 존재하기 힘들 것이다. 대부분의 수학적인 표현법 자체가 파급력 있는 논문에서 임의로 정의된 이후 사람들이 그 논문을 참조하면서 퍼져 나가는 것이기 때문. 논문을 낼 때마다 표기법에 대해 학계 전반의 동의를 구해야 한다면 논문 쓰기 참 힘들 것이다(...).

참고로, 실제 전공 서적들에서는 애초에 이렇게 모호함이 있을 수 있는 표기 자체를 하지 않으며, 하더라도 서장이나 관련 챕터에서 이후에 사용할 표기법에 대한 언급을 해두고 넘어가므로 이런 문제는 발생하지 않는다. 만약 그런 경우가 있다면 보통 저자가 실수를 한 경우.

4 관점을 바꿔보면?

엄밀히 말하면, 이 문제는 사용된 연산이 제대로 정의가 되지 않았기에, 답이 존재하지 않는다. 하지만 이 수식의 값이 아닌, 연산의 정의에 초점을 맞춰보면, 이 문제에 관한 수많은 토론은, 곰셈 기호를 생략한 경우를 어떠한 연산으로 취급할지에 대한 토론이 된다.
MoJ[15]를 단순히 곱셈 기호를 생략한 것으로 취급하는 경우가 수식의 값이 288인 경우이며, MoJ를 곱셈과 계산 값은 같지만 곱셈이나 나눗셈보다 우선해서 계산하는 새로운 연산으로 본 경우가 답이 2이다.
즉, 위에도 적혀있듯이, 사람들은 답이 없는 문제로 병림픽만 한 것이 아닌, MoJ라는 연산의 정의에 대해 심도 깊은 토론도 하고 있던 것이다.
48÷2(9+3)를 수많은 프로그램과 계산기로 계산해보는 것은 실생활에서 MoJ라는 연산을 어떻게 인식하는 것이 더 일반적인지 알아보고, '더 많이 쓰이니까 더 나은 정의다'라고 주장하기 위함이다. 또한 1/8 = 1÷8 = 1÷1(8) = 8나 1/2x = 0.5x? 같은 예를 드는 것은, 연산의 정의가 모순이 있는지, 사람의 직관과 일치하는지 확인하여, 더 받아들이기 쉬운 방식의 정의를 알아보는 과정이다.
다만 대수학 등에 대한 경험이 적어, 알못들은 연산의 정의에 대한 중요한 논의를 하고 있다는 것을 무의식적으로만 알고 있었기에, 48÷2(9+3)에 대한 이야기만 줄창 했을 뿐이다.

5 기타 유사 사례

과거에는 워크래프트 3의 홈페이지 게시판에서는 111+1*2=224는 맞을까? 라는 문제로 113이 맞다, 224가 맞다로 논쟁을 벌인 적이 있다.(+를 *로 보고 222라고 답한 사람도 있다.) 근데 이건 틀리면 그냥 바보잖아 초등학교 다시 나오라고 해야 할 정도지[16] 이것의 유래는 111+1x2=224에서 확인할 수 있다.

참고로 옆나라 일본대만의 인터넷에서도 이와 같은 문제로 시끄러웠던 모양이다. 이쪽은 6÷2(1+2) = 9 vs 1. #한국에선 12년 6월 21일에 다시 검색어로 떴다.# 이거 너무하는거 아니냐!

물론 이항목의 수식도 11년 4월경에 그대로 마법의 문장을 쓴채로 아주 많은 기사가 양산되었다(...).

그리고 2013년 2월 17일 해외에서 7+7÷7+7x7-7=50 or 56이라는 비슷한 것이 나왔지만, 이는 헷갈리기 쉬울 뿐 '곱셈과 나눗셈을 덧셈과 뺄셈보다 우선시한다'라는 사칙연산 규칙을 명확히 적용 할 수 있기에 논란은 그리 크지 않다.[17]

가수 채연두뇌를 풀가동해서 2+2×2를 8로 골랐다가 굴욕을 맛본 적이 있다. 정답은 다 아시겠지만 6. 절충안으로 7 결정

4년 후에도 비록 수학과는 관련이 없지만 인터넷에 올라온 드레스 사진 때문에 또 다시 전 세계가 논란에 휩싸이게 된다.
  1. 이 떡밥으로 조용한 갤러리 축에 들어갔던 디시인사이드 수학갤러리는 하루에 100페이지가 넘는 글들이 난립하게 되었다.
  2. a*b를 ab로 표기하는 것
  3. multiplication indicated by juxtap-osition is carried out before division. Thus, in general, for any variables a, b and c, we would have a/bc = a/(bc) (assuming, of course, that b and c are nonzero.)
  4. 단, 해당 부분은 문자를 통해 설명하고 있으므로 수를 직접 사용한 경우와는 다르다는 반론이 있다.
  5. 임의의 a, b, c에 대하여 단 b와c는 0이 아니다 라는 조건이 있는데, 수를 직접 사용한 경우와 문자를 사용한 경우는 다르다는 반론은 그 상세한 설명이 상세한 설명이 뒷받침되지 않는 한 신빙성이 떨어진다.
  6. 같은 카시오제라도 모델마다 다르다. fx-570EX는 식이 자동으로 48÷(2(9+3))으로 변경되어 2를 내놓는 반면, fx-5800P는 288을 내놓는다.
  7. 사실 이는 잘못된 주장이다. 곱셈 연산자 ×(*)나 MoJ와 달리 위의 식에서는 피연산자간의 교환을 허용하지 않는다. 즉, 2*(9+3) = (9+3)*2 이지만 (9+3)2는 2(9+3)과 달리 관습적으로도 쓰지 않으므로 식이 아니다. 따라서 답 288을 지지한다면 곱셈 연산자의 생략이 아닌, 의미는 같지만 피연산자간의 교환을 허용하지 않는 구문을 가진 새로운 연산자로 보는 것이 옳다.
  8. 다만 Mathway 라는 엔진은 예외. 이 엔진은 2(9+3)을 전부 분모로 인식하고 2를 출력한다. 위에서 언급한 것과 같이 이 엔진에도 2*(9+3)으로 입력하면 288을 출력.
  9. 당신이 생각하는 그 평가원이 맞다. 평가원은 수능 문제뿐만 아니라 교육과정에 대한 연구/평가도 한다. 애초에 평가원 자체가 국립교육평가원과 한국교육개발원의 교육평가 업무가 합쳐진 것이다.
  10. 2008학년도 수능 물리Ⅱ 복수정답 사태 참고. 실제로 2를 지지하는 링크글을 보면 수학8(중학교 2학년) 교과서에 근거해서 평가원은 진짜 답이 무엇이든 간에 답이 2라고 해야한다. 그런데 지들이 검정한 교과서와 다른 말을 하고있으니 과연 평가원답다
  11. 사용자가 입력한 수식에 문제가 있습니다. 다음과 같은 수식으로 변경하시겠습니까? =48/2*(9+3) 라고 묻는 창이 뜬다.
  12. 물론 이것도 좋은 표기는 아니라서, 위키피디아를 보면, 나눗셈을 하느니 x승 시켜서 곱셈으로만 나타내는 것이 더 나은 표기이다.
  13. 번역은 다음과 같다. 현대수학은 왼쪽에서 오른쪽으로 계산하는걸 원칙으로한다. 그러나 일부 책에서는 다르게 계산하는 방법으로 풀었는데 다음 개정판에서는 혼동을 방지하기 위해서 괄호를 넣을 것이다.
  14. AST(Abstract syntax tree : 추상 구문 트리)라고 한다
  15. 위에도 나와있듯이 이 문서에서 MoJ란 multiplication by juxtaposition, 즉 곱셈 기호 없이 나열만으로 곱셈을 표시하는 것을 말한다.
  16. 덧셈보다 곱셈을 먼저하는 것이 원칙이다. 따라서 답은 113. 식으로 계산하면 111+(1x2) = 111+2=113
  17. 7÷7과 7×7을 먼저처리하면 7+1+49-7이 된다. 즉, 답은 50이다.