13.1.4 사용자 정의 함수로 프로그램 재구성하기
이번에는 앞에서 만든 프로그램을 함수를 활용한 방식으로 수정해 보겠습니다. 다음은 5장에서 break를 배울 때 작성한 구구단 게임입니다.
import random
print('구구단을 외자! 구구단을 외자!')
for i in range(20):
a, b = random.randint(2, 9), random.randint(1, 9)
answer = int(input(str(a) + 'x' + str(b) + '? '))
if answer != a * b:
print('땡! 정답은', a * b)
break
함수를 활용해 프로그램을 재작성해 봅시다. 우선 함수로 묶을 부분을 정해야 합니다. 문제를 내고 정답을 입력받아 오답 여부를 반환하는 부분을 함수로 작성해 봅시다. 함수명은 gugudan()으로 하겠습니다. 숫자 2개는 함수를 호출할 때 인자로 받게 합니다.
import random
def gugudan(num1, num2):
answer = int(input(str(num1) + 'x' + str(num2) + '? '))
if answer == num1 * num2:
return 0
else:
print('땡! 정답은', num1 * num2)
return -1