반응형
1. 계산기 기본 구조 설계:
우리가 만들 계산기는 간단하게 두 개의 숫자와 하나의 연산자를 입력받아 계산하는 기능을 갖추고 있습니다. 이를 위해 사용자로부터 숫자와 연산자를 입력받는 함수와 각 연산을 수행하는 함수들을 정의합니다.
2. 계산기 함수 설계:
- 먼저, 덧셈, 뺄셈, 곱셈, 나눗셈 연산에 대한 함수를 따로 정의합니다.
def add(x, y):
return x + y
def subtract(x, y):
return x - y
def multiply(x, y):
return x * y
def divide(x, y):
return x / y
3. 사용자 입력 처리:
- 사용자로부터 첫 번째 숫자, 연산자, 두 번째 숫자를 입력받는 함수를 정의합니다.
def get_user_input():
num1 = float(input("첫 번째 숫자를 입력하세요: "))
operator = input("연산자를 입력하세요 (+, -, *, /): ")
num2 = float(input("두 번째 숫자를 입력하세요: "))
return num1, operator, num2
4. 계산 함수 실행:
- 사용자가 입력한 연산자에 따라 적절한 함수를 호출하여 계산 결과를 반환하는 함수를 정의합니다.
def calculate(num1, operator, num2):
if operator == "+":
return add(num1, num2)
elif operator == "-":
return subtract(num1, num2)
elif operator == "*":
return multiply(num1, num2)
elif operator == "/":
return divide(num1, num2)
else:
return "잘못된 연산자입니다."
5. 메인 함수와 실행:
- 마지막으로, 메인 함수에서 사용자 입력을 받고, 계산 함수를 호출하여 결과를 출력합니다.
def main():
num1, operator, num2 = get_user_input()
result = calculate(num1, operator, num2)
print(f"결과: {result}")
if __name__ == "__main__":
main()
최종 전체 코드:
def add(x, y):
return x + y
def subtract(x, y):
return x - y
def multiply(x, y):
return x * y
def divide(x, y):
return x / y
def get_user_input():
num1 = float(input("첫 번째 숫자를 입력하세요: "))
operator = input("연산자를 입력하세요 (+, -, *, /): ")
num2 = float(input("두 번째 숫자를 입력하세요: "))
return num1, operator, num2
def calculate(num1, operator, num2):
if operator == "+":
return add(num1, num2)
elif operator == "-":
return subtract(num1, num2)
elif operator == "*":
return multiply(num1, num2)
elif operator == "/":
return divide(num1, num2)
else:
return "잘못된 연산자입니다."
def main():
num1, operator, num2 = get_user_input()
result = calculate(num1, operator, num2)
print(f"결과: {result}")
if __name__ == "__main__":
main()
이제 이렇게 만든 간단한 계산기는 사용자로부터 숫자와 연산자를 입력받아 계산 결과를 출력합니다. 사용자가 잘못된 연산자를 입력하거나 숫자를 입력하지 않는 등의 상황에 대해 예외 처리는 추가로 구현하면 더욱 안정적인 계산기를 만들 수 있습니다. 계산기 프로그램을 확장하여 계산 기능을 추가하거나 GUI 인터페이스를 개발하여 보다 다양한 방법으로 활용할 수도 있습니다.
반응형
'Python > 파이썬 기초' 카테고리의 다른 글
파이썬 이중 for문을 활용한 구구단 만들기 (0) | 2024.04.05 |
---|---|
파이썬 독학 커리큘럼 - 기초 마스터 (0) | 2023.08.15 |
파이썬 예외처리 (try, except, finally) (0) | 2023.07.31 |
파이썬 패키지 (packages) (0) | 2023.07.30 |
파이썬 모듈 (module) (0) | 2023.07.30 |