[기초#9] 프로젝트 예제: 미니 계산기 만들기

[기초#9] 프로젝트 예제: 미니 계산기 만들기

한줄 요약:
파이썬 기초 종합 실습: 미니 계산기 프로젝트. 입력, 조건문, 함수, 예외처리, 반복문을 활용해 완성하는 파이썬 콘솔 계산기 예제.
지금까지 배운 파이썬 기초(입력, 조건문, 반복문, 함수, 예외처리)를
전부 합쳐서 ✨ “미니 계산기 프로그램” ✨ 만들기!


1. 목표

  • 사용자로부터 숫자와 연산기호 입력받기
  • 사칙연산(+, -, *, /) 수행하기
  • 잘못된 입력에도 멈추지 않도록 예외처리

2. 1️⃣ 기본 구조 설계

# step1: 사용자 입력받기
# step2: 연산 수행하기
# step3: 예외 처리로 안전하게 실행하기
# step4: 반복문으로 계속 계산 가능하게 만들기

3. 2️⃣ 1단계 – 간단한 계산기

a = int(input("첫 번째 숫자: "))
b = int(input("두 번째 숫자: "))
op = input("연산 기호를 입력하세요 (+, -, *, /): ")

if op == "+":
    print("결과:", a + b)
elif op == "-":
    print("결과:", a - b)
elif op == "*":
    print("결과:", a * b)
elif op == "/":
    print("결과:", a / b)
else:
    print("지원하지 않는 연산입니다.")

🪄 실행 예시:

첫 번째 숫자: 10
두 번째 숫자: 3
연산 기호를 입력하세요 (+, -, *, /): *
결과: 30

4. 3️⃣ 2단계 – 함수로 만들기

def calc(a, b, op):
    if op == "+":
        return a + b
    elif op == "-":
        return a - b
    elif op == "*":
        return a * b
    elif op == "/":
        return a / b
    else:
        return "지원하지 않는 연산"
print(calc(5, 2, "+"))
print(calc(10, 0, "/"))

🪄 결과:

7
ZeroDivisionError 발생!

5. 4️⃣ 3단계 – 예외 처리로 안전하게

def calc(a, b, op):
    try:
        if op == "+":
            return a + b
        elif op == "-":
            return a - b
        elif op == "*":
            return a * b
        elif op == "/":
            return a / b
        else:
            return "지원하지 않는 연산입니다."
    except ZeroDivisionError:
        return "0으로 나눌 수 없습니다!"
    except Exception as e:
        return f"에러 발생: {e}"

6. 5️⃣ 4단계 – 반복 가능한 계산기 완성

def calc(a, b, op):
    try:
        if op == "+":
            return a + b
        elif op == "-":
            return a - b
        elif op == "*":
            return a * b
        elif op == "/":
            return a / b
        else:
            return "지원하지 않는 연산입니다."
    except ZeroDivisionError:
        return "0으로 나눌 수 없습니다!"

while True:
    try:
        a = int(input("첫 번째 숫자: "))
        b = int(input("두 번째 숫자: "))
        op = input("연산 기호 (+, -, *, /) 또는 q로 종료: ")

        if op.lower() == "q":
            print("계산기를 종료합니다. 👋")
            break

        result = calc(a, b, op)
        print("결과:", result)
    except ValueError:
        print("⚠️ 숫자를 제대로 입력해주세요!")

🪄 실행 예시:

첫 번째 숫자: 8
두 번째 숫자: 2
연산 기호 (+, -, *, /) 또는 q로 종료: /
결과: 4.0
첫 번째 숫자: 10
두 번째 숫자: 0
연산 기호 (+, -, *, /) 또는 q로 종료: /
결과: 0으로 나눌 수 없습니다!
첫 번째 숫자: q
계산기를 종료합니다. 👋

7. 코드 요약

기능설명
def함수 정의
try ~ except에러 처리
while True반복 실행
input()사용자 입력
break종료 조건

8. 확장 아이디어

이 미니 계산기를 조금만 발전시키면?

  • ✅ 여러 번 계산 결과 저장하기
  • ✅ 파일(result.txt)로 결과 로그 남기기
  • ✅ GUI 계산기 만들기 (tkinter, PyQt 등 활용)

이전 강좌 👈 [기초#8] 모듈과 패키지: 코드 재활용의 진짜 시작
다음 강좌 👉 [예제#1] 커피 계산기 (실전 프로젝트 복습편)

댓글 남기기

광고 차단 알림

광고 클릭 제한을 초과하여 광고가 차단되었습니다.

단시간에 반복적인 광고 클릭은 시스템에 의해 감지되며, IP가 수집되어 사이트 관리자가 확인 가능합니다.