본문 바로가기
파이썬

사용자 입력을 받아 사칙연산 수행하기

by ghiott 2025. 2. 24.
반응형

Python에서는 input()을 사용하여 사용자로부터 숫자를 입력받고, 다양한 연산을 수행할 수 있습니다. 이번 글에서는 두 개의 숫자를 입력받아 사칙연산(+, -, ×, ÷)을 수행하는 프로그램을 만들어 보겠습니다.


1. 프로그램 개요

이 프로그램은 다음과 같은 기능을 수행합니다.

사용자로부터 두 개의 숫자 입력받기
입력된 숫자로 덧셈, 뺄셈, 곱셈, 나눗셈 수행
결과를 보기 좋은 형식으로 출력

이러한 기능은 계산기 프로그램, 수치 분석, 데이터 처리 등 다양한 분야에서 활용될 수 있습니다.


2. 코드 설명

아래는 Python 코드입니다.

# 사용자로부터 두 수 입력 받기
a = float(input("첫 번째 숫자를 입력하세요: "))
b = float(input("두 번째 숫자를 입력하세요: "))

# 연산 결과 출력
print(f"합: {a + b}")
print(f"차: {a - b}")
print(f"곱: {a * b}")
print(f"나눗셈: {a / b}")

이제 코드의 동작을 하나씩 살펴보겠습니다.


📌 1) 사용자 입력 받기 (input() 함수)

a = float(input("첫 번째 숫자를 입력하세요: "))
b = float(input("두 번째 숫자를 입력하세요: "))
  • input()을 사용하여 사용자의 입력을 문자열로 받습니다.
  • float()을 사용하여 입력된 문자열을 실수(float)형으로 변환합니다.
  • 이렇게 하면 정수와 실수 모두 입력 가능하도록 처리할 수 있습니다.

🔍 예제 실행

첫 번째 숫자를 입력하세요: 10.5
두 번째 숫자를 입력하세요: 2

📌 2) 사칙연산 수행 및 결과 출력 (print() 함수 & f-string)

print(f"합: {a + b}")
print(f"차: {a - b}")
print(f"곱: {a * b}")
print(f"나눗셈: {a / b}")
  • 덧셈(+): 두 숫자를 더한 값을 출력
  • 뺄셈(-): 첫 번째 숫자에서 두 번째 숫자를 뺀 값을 출력
  • 곱셈(*): 두 숫자를 곱한 값을 출력
  • 나눗셈(/): 첫 번째 숫자를 두 번째 숫자로 나눈 값을 출력
  • f-string을 사용하여 출력 형식을 깔끔하게 정리할 수 있습니다.

🔍 예제 출력

합: 12.5
차: 8.5
곱: 21.0
나눗셈: 5.25

3. 실행 예시

▶ 프로그램 실행

예제 1 (정수 입력)

첫 번째 숫자를 입력하세요: 15
두 번째 숫자를 입력하세요: 3
합: 18.0
차: 12.0
곱: 45.0
나눗셈: 5.0

예제 2 (실수 입력)

첫 번째 숫자를 입력하세요: 7.5
두 번째 숫자를 입력하세요: 2.5
합: 10.0
차: 5.0
곱: 18.75
나눗셈: 3.0

4. 예외 처리 추가

프로그램을 실행할 때, 사용자가 숫자가 아닌 값을 입력하면 **오류(ValueError)**가 발생할 수 있습니다. 이를 방지하기 위해 **예외 처리(try-except문)**를 추가해 보겠습니다.

✨ 개선된 코드

try:
    # 사용자 입력 받기
    a = float(input("첫 번째 숫자를 입력하세요: "))
    b = float(input("두 번째 숫자를 입력하세요: "))

    # 연산 결과 출력
    print(f"합: {a + b}")
    print(f"차: {a - b}")
    print(f"곱: {a * b}")
    
    # 나눗셈 예외 처리 (0으로 나누기 방지)
    if b != 0:
        print(f"나눗셈: {a / b}")
    else:
        print("오류: 0으로 나눌 수 없습니다.")

except ValueError:
    print("입력 오류! 숫자를 입력해야 합니다.")

🔍 개선된 실행 예시

예제 1 (정수 입력 시)

첫 번째 숫자를 입력하세요: 20
두 번째 숫자를 입력하세요: 5
합: 25.0
차: 15.0
곱: 100.0
나눗셈: 4.0

예제 2 (0으로 나누기 시도)

첫 번째 숫자를 입력하세요: 10
두 번째 숫자를 입력하세요: 0
합: 10.0
차: 10.0
곱: 0.0
오류: 0으로 나눌 수 없습니다.

예제 3 (잘못된 입력 시)

첫 번째 숫자를 입력하세요: hello
입력 오류! 숫자를 입력해야 합니다.

5. 결론

이번 글에서는 사용자 입력을 받아 사칙연산을 수행하는 프로그램을 만들어 보았습니다.

🔹 input()과 float()을 사용하여 사용자로부터 실수 입력 받기
🔹 +, -, *, / 연산자를 사용하여 사칙연산 수행
🔹 f-string을 활용하여 결과를 보기 좋게 출력
🔹 try-except를 사용하여 예외 처리 (숫자가 아닌 값 입력 방지)
🔹 0으로 나누기 예외 처리 추가하여 안정적인 프로그램 제작

이제 여러분도 직접 실행해 보고, 다양한 숫자로 실험해 보세요! 🚀

반응형