from tkinter import *
    import random
    
    # ----- 프로그램 기능 부분 -----
    num1, num2 = 0, 0 # 전역변수
    
    def make_question():
        global num1, num2
        num1, num2 = random.randint(2, 9), random.randint(1, 9)
        question.set(str(num1) + 'x' + str(num2) + '? ')
    def check_answer():
        answer.set(num1 * num2)
    
    # ----- 프로그램 화면 부분 -----
    …
    q_btn = Button(root, text='새로운 문제', width=10, command=make_question)
    q_btn.grid(row=0, column=1)
    
    a_btn = Button(root, text='정답 확인', width=10, command=check_answer)
    a_btn.grid(row=1, column=1)
    …
    실행결과

    [새로운 문제] 버튼을 클릭하면 문제가 출제되고 [정답 확인] 버튼을 클릭하면 문제에 맞는 답이 나옵니다. 정상적으로 실행되지 않는다면 버튼에 command로 함수를 연결했는지 확인해 보세요. [새로운 문제] 버튼을 계속 클릭해서 이전과는 다른 문제가 출제되는지, [정답 확인] 버튼을 클릭하면 정답이 제대로 나오는지 확인해 보세요.

    이처럼 버튼은 사용자 정의 함수와 동적변수를 적절히 활용해 다양한 기능을 구현할 수 있습니다.

    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.