더북(TheBook)

사용자가 숫자를 입력하면 이 값을 정답과 비교해야 합니다. 이를 위해 사용자가 입력한 값을 저장할 변수 answer를 선언합니다. 처음에는 입력값이 없으니 0으로 초기화합니다.

입력을 무한하게 받을 수 없으니 답할 횟수를 정합니다. 사용자는 지정한 횟수 동안 숫자를 입력하고 그 안에 숫자를 맞히지 못하면 게임은 끝납니다. 답할 횟수, 즉 답변 기회는 간단하게 5번으로 합시다. 변수 chance를 선언하고 5를 저장합니다.

답변 기회는 5번입니다. 답변 기회를 다 쓰면 게임이 끝나야죠. 그래서 숫자를 1번 입력할 때마다 chance에서 1을 차감해 답변 기회를 하나씩 줄입니다. 남은 기회가 몇 번인지 알려 주는 것도 좋겠습니다.

이제 숫자를 입력받습니다. 사용자가 숫자를 입력하도록 안내하는 문구를 printf()로 출력하고, scanf_s()로 값을 입력받습니다. 입력받은 값은 앞에서 선언한 변수 answer에 저장합니다.

정답을 맞힐 때까지 숫자를 입력하고 값을 비교하는 작업을 반복합니다. 따라서 반복문으로 작성합니다. for 문, while 문, do-while 문 중에서 어떤 반복문을 작성할지는 개인의 선택입니다. 일반적으로 반복 횟수가 정해진 경우에는 for 문을, 그렇지 않은 경우에는 while 문이나 do-while 문을 사용합니다. 이 프로그램에서는 사용자가 몇 번 만에 정답을 맞힐지 알 수 없으므로 while 문으로 작성합니다. 이때 while 문에서 조건은 무엇으로 정해야 할까요? 게임의 종료 조건이죠. 답변 기회 5번을 다 쓰면 게임이 끝납니다. 따라서 chance가 0보다 클 때까지 답변할 수 있습니다.

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