더북(TheBook)

7.4.2 어항 물 높이 출력하기

게임을 초기화하고 나면 어항의 물이 줄어들기 시작합니다. 어항의 물이 줄어들면 어항에 물을 줘야 합니다. 그런데 사용자가 물이 줄어드는지 어떻게 알까요? 실제 게임에서는 그래픽으로 보여 주지만, 여기서는 확인하기 어려우니 직접 물 높이를 출력해 보여 주겠습니다.

게임을 시작하면 레벨이 5가 되거나 물고기가 모두 죽어서 게임이 끝날 때까지 어항에 물을 계속 줘야 합니다. 따라서 while 문으로 작성합니다.

어항의 물 높이는 처음에 모두 100으로 시작하지만, 시간이 지날수록 줄어듭니다. 물을 줄 때마다 물 높이를 출력해 보여 주겠습니다. 같은 작업을 여러 번 수행하므로 함수로 만들겠습니다. 함수명은 printfFishes로 합니다. 물 높이만 출력하면 되기 때문에 전달값도 반환값도 필요 없이 void로 선언합니다.

printfFishes()함수는 initData()함수처럼 반복문으로 어항 배열인 arrayFish를 돌며 6개 어항의 물 높이를 출력합니다. 그리고 구분할 수 있게 어항 번호를 물 높이 위에 순서대로 출력합니다. 이때 어항 번호와 출력값이 잘 보이게 정렬합니다. 물 높이 범위는 0~100이므로 최대 3자리입니다. 따라서 서식 지정자를 %3d로 주고, 빈칸을 넣어 간격을 조절합니다.

함수를 정의했으니 while 문에서 호출합니다.

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