48÷2(9+3)

덤프버전 :

1. 개요
2. 역사
3. 결론
3.1. 문제의 핵심: 표준 문법의 부재
4. 당시 사람들의 주장
4.1. 답은 2이다
4.2. 답은 288이다
4.3. 수식 자체가 잘못되었다
5. 전파 및 유사 사례
6. 관련 문서


1. 개요[편집]


2011년 초반 인터넷을 달구었던 수학 떡밥.


2. 역사[편집]


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

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

단순한 문제이지만 수학계에서도 논란이 되었고, 특히 수학교육학에서는 중요한 주제로 다뤄지기도 했다.


3. 결론[편집]


문제로서 성립하지 못한다.

이 문제의 핵심은 multiplication by juxtaposition(병렬 배치에 의한 곱셈. 한마디로 a×b를 ab로 표기하는 것을 의미한다. 이하 MJ)의 애매모호함이다. 이 MJ는 계산을 간략히 표기하기 위한 일종의 관습이기도 한데, 이 것을 곱셈 연산 *의 또다른 표기로 보느냐, *와 연산 결과는 같으나 연산의 우선순위는 다른 별도의 연산으로 보느냐에 따라 계산 결과가 달라진다.

사람들의 주장도 결국 크게 나누면 'MJ와 곱셈/나눗셈은 동등한 우선순위를 지닌다.', 혹은 'MJ는 곱셈/나눗셈에 우선한다.' 가운데 한쪽으로 귀결되며, 상세한 관련 예시들을 들어 주장하고 있을 뿐이다. 순위가 동등하면 원제의 결과가 288, MJ 우선이면 2이다.

3.1. 문제의 핵심: 표준 문법의 부재[편집]


수학 버전 중의적 표현으로도 볼 수 있다.

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

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

실제 전공 서적들에서는 모호하게 표기하지 않거나, 서장이나 관련 챕터에서 이후에 사용할 표기법을 적어놓고 넘어가므로 이런 문제는 발생하지 않는다.

여담으로, 역폴란드 표기법으로는 288이 나오는 경우는 48 ↵ 2 ÷ 9 ↵ 3 + ×, 2가 나오는 경우는 48 ↵ 2 ↵ 9 ↵ 3 + × ÷ 이다. 역폴란드 표기법은 애초에 그냥 연산 순서대로 쓰는 표기법이라 이런 순서 문제가 발생하지 않는다.

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

파일:aP7Gg.jpg
실제로 공학용 계산기 간에도 계산 순서가 다르게 설정되어 있기 때문에, 서로 다른 답을 보여준다. #


4. 당시 사람들의 주장[편집]



4.1. 답은 2이다[편집]


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

  • 미국 수학협회의 "multiplication indicated by juxtaposition is carried out before division."이라는 규정을 보면, 곱셈 기호가 생략된 병렬항의 계산이 나눗셈에 앞선다. 이 때문에 2(9+3)을 먼저 계산하고 나눗셈을 해야 한다라.

단, 위의 출처라고 할 수 있는 글은 AMS소스가 삭제돼있고, 구글 등 검색엔진에도 AMS소스는 없다. 웹아카이브를 통해 검색한 결과 2001년 까지는 위의 내용이 있었으나 변경된 것으로 확인되었다. 그리고 한 항은 더하기 단위인데 48과 2(9+3)사이에는 나눗셈 기호가 있다.

  • Allendoerfer, Oakley의 Principles of Mathematics도 답이 2라는 주장을 뒷받침해준다. 여기서는 "병치로 표시된 곱셈은 나눗셈 이전에 수행한다. 그러므로, 일반적으로, 임의의 a, b, c에 대하여 a/bc=a/(bc)가 될 것이다. (단, b와 c는 0이 아니다)" 라고 설명한다.[3]

  • "288이 답이 되려면 1÷2x = 0.5x 도 맞아야 한다."라는 반례도 있다. 저렇게 적은 경우 x를 분모의 위치로 취급하기 때문에 (9+3)역시 마찬가지라는 주장이다.[4] 하지만 매스매티카TI-Nspire 시리즈에서는 1/2x를 친히 x/2로 계산해주신다.. 응?

  • 일부 공학용 계산기(샤프제 공학계산기, 카시오 계산기 중 일부[5])에 저 수식 그대로 집어넣으면 답이 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)를 ()로 묶어서 계산하게 된다. 이것은 위에서 언급한 MJ를 나눗셈보다 우선하여 연산을 수행한 것이다. Giac/Xcas 역시 48/2에서 (2)에만 괄호를 삽입해서 2가 나온다.
Warning : using implicit multiplication for (2)(9+3)

  • 4월 11일에는 2를 뒷받침하는 수학 교과서 내용과 강사의 설명 동영상을 모은 이 올라왔고, 4월 13일에는 뉴욕 시립대 대수학 교재를 인용한 이 올라왔다.
[ 풀이 ]
48÷2(9+3)
=48÷(18+6)(분배법칙)
=48÷24
=2


  • 귀류법에 의한 풀이도 존재한다. 만약 이 문제의 해답을 288이라고 가정해보자. 곱셈기호가 생략되어있기 때문에 곱셈기호를 다음과 같이 넣어야만 한다. 그런데 그렇게 계산해 보면 사실은 곱셈기호가 생략된게 아닌 나눗셈 기호가 생략된 것으로 모순이 나타난다. 때문에 이 문항에 대해 곱셈기호가 생략됐다는 전제 혹은 곱셈기호를 위처럼 넣는 방법 자체가 거짓이다.
[ 풀이 ]
48÷2(9+3)=48÷2*(9+3)=288
48=48÷2*(9+3)*2(9+3)
1=1÷2*(9+3)*2(9+3)
2=2÷2*(9+3)*2(9+3)
2=(9+3)*2(9+3)
2/(9+3)=2(9+3)



4.2. 답은 288이다[편집]


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

  • '답은 2이다'라는 측의 계산법은 곱셈이 생략되었다는 이유로 기존의 연산식에 없는 괄호를 추가하고, 곱셈과 나눗셈을 오른쪽부터 계산하는 오류를 범하므로 틀렸다. 9+3을 계산하고 나면 괄호가 없어지고 12이라는 숫자가 남기 때문. 달리 말하면 이쪽의 주장에 따르면 48÷2×(9+3)=48÷{2÷(9+3)}이 나온다. 즉 답이 2라고 주장하는 쪽에게 48÷2×(9+3)=48÷{2×(9+3)} 라는, 곱셉기호가 표기만 되어있었다면 절대 저지르지 않았을 실수를 하는 거라고 말하는 것이다.

또 '='를 필요충분조건[6]으로 생각해보면 ×의 생략은 답이 288이 나왔을 때 성립하지 않다는 걸 알 수 있다. 48÷2×(9+3) = 48÷2(9+3)이라는 것인데, 그러면 ÷2×(9+3)에서 나누기를 곱하기로 바꾸고 뒤의 곱하기가 생략되도록 정리했을 땐 ×(9+3)/2가 되는데 이게 ÷2(9+3)와 같다는 말이 된다. 하지만 나눗셈은 좌분배법칙이 적용되지 않으므로 두 항이 같지 않다는 답이 나오게 된다.

  • 사실 곱셈 기호가 생략되었다는 것은 잘못된 주장이다. 곱셈 연산자 ×(*)나 MJ와 달리 위의 식에서는 피연산자간의 교환을 허용하지 않는다. 즉, 2×(9+3)=(9+3)×2 이지만 (9+3)2는 2(9+3)과 달리 관습적으로도 쓰지 않으므로 식이 아니다. 따라서 답 288을 지지한다면 곱셈 연산자의 생략이 아닌, 의미는 같지만 피연산자간의 교환을 허용하지 않는 구문을 가진 새로운 연산자로 보는 것이 옳다.

  • 위의 수식을 구글 또는 울프람알파와 같은 수식을 계산해 줄 수 있는 엔진[7]에 붙여넣을 경우 288이 나온다.
일부 공학용 계산기(TI-83, TI-84, TI-86, TI-89, TI-Nspire, 카시오제 공학계산기 일부[8], HP 35s(ALG 모드), HP 40gs, HP 50g(Algebraic 모드))와 스마트폰도 이 답을 출력한다.
#. 미국 대학 칼큘러스 시간에 일반적으로 가장 많이 쓰이는 그래핑 계산기인 TI-84 역시 288이라는 답을 내놓았다. 파이썬 인터프리터에서도 같은 답이 나왔다.
Wolfram Alpha288이라는 답을 내놓았다.
네이버, 다음의 계산기도 이 답을 내놓았다.

  • 2를 지지하는 사람들이 언급하는 "1/2x = 0.5x?" 에 대해서는, 문자일때는 2를 계수로 가진 x가 분모로 취급되지만 이번 케이스와 같은 상수에서는 계산 우선권이 없다고 반박할 수 있다.

단 이렇게 주장할 경우, 상수를 문자로 치환하거나 그 반대의 경우 계산식의 답이 달라진다는 결과를 낳는 치명적인 문제가 있다. 그 때문에 상수만 존재하는 식에서 곱셈기호를 생략해 병치형태로 표기할 수 없다는, 즉 수식 자체가 잘못되었다는 주장이 힘을 얻는다 물론 수와 수가 아닌 수와 괄호사이엔 곱셈의 생략이 가능하다는 정의가 있으므로 문제는 없다. 괄호는 물론 우리는 다른 수학적 기호들 사이에서도 곱셈의 생략을 쓰고 있다.(√, log, 삼각함수, 등등)

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

  • 대한민국 교육계에서는 288 쪽을 지지한다. 한국학교수학회논문집 중에 이 문제를 언급하며, 2009 개정 교육과정에 따르면 288으로 해석하는 것이 맞다고 밝힌 바가 있다.[9]


4.3. 수식 자체가 잘못되었다[편집]


이 식은 우선 수식 내부에서 /과 ÷는 대개 같이 사용하지 않으며, 곱셈기호를 생략하기 위해서는 대부분 ÷가 아닌 /를 사용한다는 사실을 간과했다. 다시 말해 곱셈기호를 생략할 때 사용하는 2차원 식인 분수를 /를 사용하여 1차원 식으로 표현한 것을 /을 ÷로 바꾸는 바람에 생기는 오류라고 할 수 있다.

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

계산기 중에서는 HP Prime(CAS 모드)가 에러를 뿜는다. 48/2(9+3)을 입력하면, f(x)=48/2인 상수함수에 9+3을 대응한 값으로 인식하여, 24를 뱉는다.

'수와 수 사이의 곱셈을 생략하지 않는다.'는 규정은 2×3에서 곱셈을 생략할 경우 23이 되므로 자연수 23과 2와 3의 곱이 구분되지 않기 때문이다. 수와 괄호 사이엔 곱셈 생략이 허용된다.[11] '상수만일 경우엔 생략을 하면 안 된다.'는 규칙이 있다는 의미보다는 일반적으로 할 필요가 없기에 하지 않는다는 뜻이 더 가까운 표현이다. 따라서 저 정의대로 한다 하더라도 2·(9+3)으로 썼어야 했다는 얘기. 그 밖에도(2)(12)등 여러 표기가 있으나 곱셈 기호 생략의 목적이 편의를 위해서인데 더 귀찮아지므로 거의 안 쓴다. 굳이 예를 들면 (1/2)×(1/4)×(1/8)을 (1/2)(1/4)(1/8)로 표기한다든지. 48÷2(9+3)의 경우에는 2에 괄호가 없어서 점점 더 미궁속으로...[12] [13]

다른 수식을 예로 들자면, 1/2/4같은 경우가 있다. 1÷2÷4라면 0.125가 답이겠지만, 1/2/4라면 그것이 0.5/4인지 1/0.5인지가 애매하기 때문이란 것. 여기서도 위에서 언급한 MJ와 ×의 관계처럼, /가 ÷를 표기만 다르게 한 것인지, ÷보다 우선순위가 다른 새로운 연산인지 정해지지 않았다. 애초에 /는 나누기보단 분수로서의 표현으로 자주 쓰인다[14] 이러한 표기에서 비롯되는 해석의 모호성은 수식에서뿐만 아니라 언어에서도 나타난다. 이는 아버지가방에 들어가신다와 같은 맥락.

그러므로 애초에 문제에 오류가 있으니 하나로 정해지지 않은 답을 논하는 것 자체가 오류라는 것이 핵심이다. 그래서 최근 계산기에서 기호를 넣지 않고 괄호를 시작하거나 끝난 괄호 뒤에 기호를 안 넣고 숫자를 입력할 경우 자동으로 곱셉기호를 중간에 넣어주는 경우도 있다. 관례를 지키는 한편 오류도 피하는 것.

아래의 링크에 비슷한 사례가 있다.

http://jeff560.tripod.com/operation.html

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.

현대수학은 왼쪽에서 오른쪽으로 계산하는걸 원칙으로한다. 그러나 일부 책에서는 다르게 계산하는 방법으로 풀었는데 다음 개정판에서는 혼동을 방지하기 위해서 괄호를 넣을 것이다.



5. 전파 및 유사 사례[편집]


  • MJ 연산 우선순위의 부재와 관련됨.
    • 네이버 캐스트에서 2009년에 사칙연산에 대한 글을 다룬 적이 있는데, 2년이 지나서 이 문제가 떡밥이 되자 그 글에 내용을 추가해서 수식의 잘못을 탓하여 이 논쟁에 젓가락을 얹었다. #
    • 2011년도 4월 경에 원제와 관련되어 마법의 문장을 쓴 채로 아주 많은 기사가 양산되었다.
    • 6÷2(1+2)=9 vs 1
옆나라 일본대만인터넷에서도 위 문제로 시끄러웠던 모양이다. 이쪽은. #한국에선 2012년 6월 21일에 다시 검색어로 떴다. 2015년에도 재조명을 받았고 2018년도 페이스북에서 다시 떠들썩했다. 몇년마다 한번씩 도는 떡밥.
  • 2019년에 살짝 변형되어 4÷2(2+2) = ? 라는 문제로 바뀌어 새로 등장하였다. 숫자만 다를 뿐 본질은 같다.
  • 2023년에 방영한 미운 우리 새끼 349회에서 8÷4(5-1)이라는 문제로 언급되었는데 여기서 수학 강사인 정승제는 4(5-1)를 한 항으로 간주하여 계산하는 방식을 사용하였고 그 결과 1/2라는 답이 나왔다.

  • 연산의 우선순위가 명확함
    • 2013년 2월 17일 해외에서 7+7÷7+7×7-7=50 or 56이라는 비슷한 것이 나왔지만, 이는 헷갈리기 쉬울 뿐 '곱셈과 나눗셈을 덧셈과 뺄셈보다 우선시한다'는 사칙연산 규칙을 명확히 적용할 수 있기에 논란은 그리 크지 않다.[15]
    • SBS 《작렬 정신통일》에서 가수 채연두뇌를 풀가동해서 2+2×2를 8로 골랐다가 굴욕을 맛본 적이 있다. 정답은 다 알겠지만 6.
    • 이를 비웃는 한 문제도 있다. 예를 들면 230-220×0.5의 해답은 바로 5!이다.
    • 과거 워크래프트 3의 홈페이지 게시판에서는 111+1×2=224는 맞을까? 라는 문제로 113이 맞다, 224가 맞다로 논쟁을 벌인 적이 있다. 이것의 유래는 111+1×2=224에서 확인할 수 있다. 물론 이건 사칙연산의 규칙만 알면 풀 수 있다. 시사하는 바도 다르고.

6. 관련 문서[편집]






파일:크리에이티브 커먼즈 라이선스__CC.png 이 문서의 내용 중 전체 또는 일부는 2023-10-19 00:09:51에 나무위키 48÷2(9+3) 문서에서 가져왔습니다.

[1] 조용한 갤러리 축에 들어갔던 디시인사이드 수학 갤러리는 당시에 이 떡밥으로 하루에 100페이지가 넘는 글들이 난립하였다.[2] AST(Abstract syntax tree : 추상 구문 트리)라고 한다.[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] 위 출처글의 경우, 6÷2×3의 경우와 a÷bc(단, a=6,b=2,c=3)의 경우 왜 답을 다르게 인식하느냐 하는 예시를 문제로 제시한다. 전자의 경우 순서대로 계산하여 답이 9라고 대답하지만, 후자의 경우 bc가 같이 분모가 되는 것으로 보아 1이라고 대답한다는 것.[5] 특히나 fx-9860G III의 경우 48÷2(9+3)을 입력할 경우 자동으로 괄호가 삽입되어 48÷(2(9+3))이 입력된다.(fx-9860G II도 똑같다. 어차피 II나 III나 기능은 대동소이하다.) 국민 계산기라 불리는 fx-570ES Plus도 2가 나오며, 570 시리즈의 최신기종인 fx-570CW에서도 fx-9860G 시리즈와 마찬가지로 자동으로 괄호를 넣어준다.[6] 좌항을 계산해서 우항이 나왔으면, 우항을 잘 조립하면 좌항이 다시 나올 수 있어야 한다는 조건.[7] 다만 Mathway 라는 엔진은 예외. 이 엔진은 2(9+3)을 전부 분모로 인식하고 2를 출력한다. 위에서 언급한 것과 같이 이 엔진에도 2*(9+3)으로 입력하면 288을 출력.[8] 카시오에서 제공하는 앱인 ClassPad에서 288을 내놓는다. ClassPad의 실물 계산기 버전인 fx-CP400, 추가로 일반 프로그램용 계산기인 fx-5800P가 288을 내놓는다.[9] 교육과정이 이후로도 바뀌겠지만 해석이 달라진 것은 없다.[10] 사용자가 입력한 수식에 문제가 있습니다. 다음과 같은 수식으로 변경하시겠습니까? =48/2*(9+3) 라고 묻는 창이 뜬다.[11] 정확히는 아얘 생략을 해버리는게 아니라 3·4 식으로 점을 찍어 간략하게 표현한다.[12] 대수학에서 문자로 나타낸 식에 대입하는 과정에선 괄호를 한 쪽만 쳐도 되지만 이 경우는 아니다.[13] 사실 2(9+3)같은 방식으로 곱셈을 생략하는 표기는 대학수학에서 일상적으로 쓰는 표기이다. James Stewart의 calculus, Stanley Ocken의 Math Review for Algebra and Precalculus, 그외 여러 원서에서도 수와 괄호 사이의 곱셈을 생략하는 경우는 흔하게 볼 수 있다.#[14] 애초에 분수는 곱셈과 달리 괄호를 생략해도 되기 위한 기본 조건인 결합법칙부터가 성립하지 않는다. 하지만 곱셈은 결합법칙이 성립하는데 곱셈을 반박하기 위해 결합법칙이 성립하지 않은 것을 가져온 이 예시는 부족한 근거라고 볼 수 있다.[15] 7÷7과 7×7을 먼저 처리하면 7+1+49-7이 된다. 즉, 답은 50이다.