• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    미해결

가변인자 사칙연산

19.05.28 20:39 작성 조회수 279

0

5강 function arguemnts의 10분 35초에서요.

가변인자 계산을 sum(args)로만 하셔서

사칙연산을 시도해봤는데 안 되네요.

 

2번째 줄을

return a - b- deduction(args)

로 해서 뺄셈을 하려고 했는데 안 되고요.

 

곱셈은

return a * b * multiple(args)

return a * b * mul(args)

return a * b * multiplication(args)

로 해도 안 되네요.

 

나눗셈 같은 경우는 //로 하려고 했는데

순서에 따라서 달라지는 값일 것 같아서

가변인자에서는 안 쓰일 것 같아서 안 해봤어요.

 

궁금해서 구글에도 검색해보고

stack overflow에 variable length deduction

asterisk deduction 등으로 검색해봤는데도

python에서 실행한 건 없고 c언어로만 나오더라고요.

 

가변인자에서는 덧셈을 제외한 사칙연산이 안 되는 건가요? 안 되는 거라면 그 이유를 알려주실 수 있나요?

답변 2

·

답변을 작성해보세요.

0

박미나님의 프로필

박미나

질문자

2019.06.03

def asterisk_test_sum(a, b, *args):
    return a + b + sum(args)


print(asterisk_test_sum(1, 2, 3, 4, 5), "\n")


def asterisk_test_subtraction(a, b, *args):
    return a - b - subtraction(args)


print(asterisk_test_subtraction(1, 2, 3, 4, 5), "\n")


def asterisk_test_multiplication(a, b, *args):
    return a * b * multiplication(args)


print(asterisk_test_multiplication(1, 2, 3, 4, 5), "\n")


def asterisk_test_division(a, b, *args):
    return a / b / division(args)


print(asterisk_test_division(1, 2, 3, 4, 5), "\n")

 

 

입니다.

sum 을 제외한

subtraction, multiplication, division이

모두 정의가 안 되어있다고 뜹니다.

 

가변인자 계산에서는 뺄셈, 곱셈, 나눗셈이 안 되는 건가요?

 

 

0

혹시 정확한 코드를 올려주시겠어요? 언뜻 생각하기에는 reculsive 함수가 되어버린거 같습니다.