본문 바로가기
Programming/파이썬(python)

[스텍_stack] 함수 활용 실습_2

by 어깨 :) 2023. 5. 25.
728x90

이전에 실습했던 사칙연산과 같은 결과지만 InOut 함수를 사용해서 한번 함수를 작성해 보겠습니다.

1) 함수 작성

def CalNum(a,b,op1):
   if op1=='+':
       return a+b
   elif op1=='-':
       return a-+b
   elif op1 == '*':
    return a *+ b
   else:
       if b==0:
           return b/a
       else:
           return a/b
def EnterOp(num1, num2):
    op=input("연산자(+,-,*,/) 입력: ")
    while op != '+ ' and op != '-' and op != '*' and op != '/':
        print('연산자 입력 오류!')
        op = input("연산자(+,-,*,/) 입력: ")
    result=CalNum(num1,num2,op)
    return op, result

def InOut():
    n1=int(input('숫자1 입력: '))
    n2 = int(input('숫자2 입력: '))
    op,result=EnterOp(n1,n2)
    print('연산결과: %d %s %d=%d'%(n1,op,n2,result))


#main()
InOut()


위 코드는 사용자로부터 두 개의 숫자와 연산자를 입력받아 연산을 수행하고 결과를 출력하는 프로그램입니다. 아래는 코드의 동작과정을 자세히 설명한 것입니다:

1. 사용자로부터 두 개의 숫자를 입력받습니다.
-num1 변수에는 첫 번째 숫자를 입력받습니다.
-num2 변수에는 두 번째 숫자를 입력받습니다.

2. 사용자로부터 연산자를 입력받습니다.
-op 변수에는 '+', '-', '*', '/' 중 하나의 연산자를 입력받습니다.
-입력된 연산자가 유효한 연산자가 아닐 경우, "연산자 입력 오류!" 메시지를 출력하고 다시 연산자를 입력받습니다.


3. 입력된 숫자와 연산자를 EnterOp 함수의 인자로 전달하여 연산을 수행합니다.
-EnterOp 함수는 op와 입력된 숫자를 CalNum 함수에 전달하여 연산을 수행하고 결과를 반환합니다.

4. 연산 결과를 출력합니다.
-"연산결과: {num1} {op} {num2} = {result}" 형식으로 결과를 출력합니다. {num1}, {op}, {num2}, {result}는 각각 입력된 숫자, 연산자, 연산 결과를 대체합니다.

 

 


 

2) 결과 실행

숫자 1 입력: 50
숫자 2 입력: 20
연산자(+,-,*,/) 입력: *
연산결과: 50 * 20=1000

 

 

프로그램은 사용자가 입력한 숫자와 연산자에 따라서 정확한 연산을 수행하고, 그 결과를 화면에 출력합니다. 위의 예시에서는 숫자 50과 20을 곱한 결과인 1000이 출력되었습니다.

 

728x90