- 간단한 프로그램 만들기 1 (계산기)2026년 04월 16일
- 소쩍소쩍이
- 작성자
- 2026.04.16.:56
사용자에게 숫자 2개를 입력받고, 사칙연산 기호(+, -, *, /, %, //) 를 입력받으면, 그 연산 결과를 출력하라.
공백(화이트 스페이스)를 입력받아도 무시되도록 구현하라.연산 함수 정의
각 사칙연산을 독립적인 함수로 분리하여 구현
def add(a,b): return a + b def sub(a,b): return a - b def mul(a,b): return a * b def div(a,b): return a / b def quo(a,b): return a % b def rema(a,b): return a // b딕셔너리를 활용한 연산 처리
조건문(
if-elif)을 반복적으로 사용하는 대신, 딕셔너리를 활용하여 연산을 처리하는 구조로 설계
연산 기호를 key로, 각 연산 함수를 value로 매핑하여 입력값에 따라 해당 함수를 호출할 수 있도록 구성def cal(): oper_dict={ "+": add, "-": sub, "*": mul, "/": div, "%": quo, "//": rema, }입력 처리 및 검증
사용자 입력은
strip()을 사용하여 공백을 제거한 뒤 처리하고 공백만 입력된 경우에는continue를 통해 다시 입력을 받도록 구성또한 입력된 연산 기호가 딕셔너리에 존재하지 않는 경우,
"잘못된 계산"을 출력하고 다시 입력 단계로 돌아가도록 하였다.while True: num1_input = input("정수1 >> ") if num1_input.strip() == "": continue num1 = int(num1_input) num2_input = input("정수2 >> ") if num2_input.strip() == "": continue num2 = int(num2_input) if num1 == 0 and num2 == 0: print("종료") break oper_u = input("사칙연산 >> ").strip() if oper_u == "": continue if oper_u not in oper_dict: print("잘못된 계산") continue get = oper_dict[oper_u](num1,num2) print("결과 :", get) cal()종료 조건
정수1과 정수2에 모두 0이 입력되면 프로그램이 종료되도록 조건을 설정하고 이를 통해 반복문 기반의 계산기를 사용자 의도에 따라 종료할 수 있도록 구현했다.

'파이썬 > 문제 및 예제' 카테고리의 다른 글
간단한 프로그램 만들기 7 (야구게임) (0) 2026.04.17 간단한 프로그램 만들기 8 (로또 키오스크 만들기) (0) 2026.04.17 함수 예제 및 문제 (0) 2026.04.13 리스트 예제 및 문제 (0) 2026.04.10 반복구조 예제 및 문제 (0) 2026.04.09 다음글이전글이전 글이 없습니다.댓글
스킨 업데이트 안내
현재 이용하고 계신 스킨의 버전보다 더 높은 최신 버전이 감지 되었습니다. 최신버전 스킨 파일을 다운로드 받을 수 있는 페이지로 이동하시겠습니까?
("아니오" 를 선택할 시 30일 동안 최신 버전이 감지되어도 모달 창이 표시되지 않습니다.)