반복 조건은 간단합니다. 입력한 answer가 정답 a * b와 일치할 때만 구구단 문제를 계속 내면 되므로 answer == a * b로 작성하면 됩니다. 그런데 while이 등장하기 전에 while에서 사용되는 변수가 이미 만들어져야 오류가 발생하지 않았죠? 따라서 while이 등장하기 전에 변수 answer와 a,b를 정의해야 합니다. 3개의 변수에 모두 0을 저장하는 코드를 한 줄로 작성합니다.
세 변수에 각각 0을 넣으면 처음 실행할 때도 answer == a * b를 충족합니다. 반복문은 정답이 틀리면 종료합니다. 정답이 틀리면 while 문을 종료하고 다음 코드로 넘어가므로 정답이 틀릴 때 출력하는 명령어는 while 문 외부에 마지막으로 적어 주면 됩니다.
369 게임(2)
이번에는 앞에서 간단하게 작성한 369 게임을 발전시켜 보겠습니다. 1부터 100까지 숫자를 출력하되 3, 6, 9가 포함된 숫자에서는 ‘짝!’을 출력하도록 만든 프로그램이었습니다. 사실 컴퓨터가 혼자 하는 프로그램이죠. 이번에는 게임처럼 입력칸을 만들어 사람이 직접 숫자를 입력하도록 만들겠습니다.
순서에 맞는 숫자나 ‘짝’이 입력되면 다음 입력으로 넘어가고, 잘못된 입력이 들어오면 ‘틀렸습니다!’를 출력한 후 프로그램을 종료합니다. 먼저 입력받는 부분을 추가해 봅시다. 100이 될 때까지 숫자를 계속 입력받아야 하므로 반복문 안에 input()을 넣고, 입력된 값은 변수 say에 저장합니다.
print('3~ 6~ 9~ 369~ 3~ 6~ 9~ 369~ ')
for i in range(1, 101):
say = input()