-
카테고리
-
세부 분야
프로그래밍 언어
-
해결 여부
미해결
프로그램에 잘못된 부분이 있습니다.
20.01.08 17:00 작성 조회수 96
1
04 계산기 만들기 두번째 부분에서 19분 28초
영상을 보시면 5 + 10 *20 + 30 을 330이라고 하는 내용이
나오는데 235가 맞는 답입니다. * 이나 / 이 연산자 +나 - 보다 연산자 우선순위가 맞습니다.
따라서 올바른 계산기 프로그램을 만들려면 후위 표기식으로 바꿔서 만들어야 합니다.
답변을 작성해보세요.
4
남박사
지식공유자2020.01.08
일단..
콘솔 스마트 계산기 만들기 심플 (파이썬기초, 계산기 로직, 리스트, 반복문, eval 함수)
위 링크의 강좌에서는 5 + 10 * 20 + 30 = 235 가 나오는 단순한 방식의 강좌입니다. 현재 강좌의 이전 강좌인 위의 링크의 강좌를 다시 보시는걸 추천 드리며 부연 설명을 드리면 현재 질문주신 이 강좌의 핵심은 연산자 우선순위에 의해 계산하는 방식이 아니라 사용자에 의해 입력된 순서에 의해 계산을 하는게 목적인 강좌 입니다.
실제 윈도우 계산기나 핸드폰 계산기 혹은 현실에서 사용하는 물리적 계산기에
5 + 10 * 20 + 30 을 순서대로 입력하면 330이 나옵니다.
이 강좌의 핵심은 그걸 어떻게 구현하느냐가 목적이지 단지 위 계산식의 결과를 연산자 우선순위에 의해 235라는 결과를 얻기 위함이 절대 아닙니다. 단순 연산자 우선순위를 지켜서 계산하는건 위 링크의 강좌 내용에도 나오지만 eval() 함수 하나면 끝나게 되지만 사용자가 입력한 순서대로 실제 우리가 사용하는 여러 계산기처럼 흉내를 내는게 훨씬 더 복잡한 내용이며 그 내용을 이해하는데 목적을 두고 있는 강좌입니다. 참고가 되셨으면 좋겠습니다.
답변 1