➍ 둘째, 어항의 물 높이가 0이 아니라면 물 높이가 100을 넘는지 확인해야 합니다. 100이면 물을 줄 필요가 없으니까요.
물 높이가 100을 넘는지 확인할 때는 현재 물 높이에 1을 더한 높이(물을 줬을 때), 즉 cursor[num - 1] + 1의 값이 100보다 작거나 같은지 확인합니다. 조건에 해당하면 cursor[num - 1] += 1을 해서 현재 물 높이에 1을 더합니다.
7.4 프로젝트.c
int level;
int arrayFish[6];
int * cursor; --------------------------------------- ➊ 어항 배열에 접근할 포인터 변수 선언
(중략)
int main(void) {
(중략)
cursor = arrayFish; ----------------------------- ➋ 포인터 변수에 어항 배열의 시작 주소 넣기
while (1) {
(중략)
decreaseWater(prevElapsedTime);
if (cursor[num - 1] <= 0) { ----------------- ➌ 조건 1. 어항의 물 높이가 0 이하
printf("%d번 어항의 물고기는 이미 죽었으므로 물을 주지 않습니다.\n", num);
} else if (cursor[num - 1] + 1 <= 100) { ---- ➍ 조건 2. 어항의 물 높이가 100 이하
printf("%d번 어항에 물을 줍니다.\n\n", num);
// 물을 주면 물 높이 + 1(cursor[num - 1] = cursor[num - 1] + 1)
cursor[num - 1] += 1;
}
}
return 0;
}