더북(TheBook)

따라서 다음과 같이 오른쪽으로 이동할 수 없는 경우에는 반복문을 탈출하도록 작성해서 오른쪽으로 이동할 수 있을 때만 진행하도록 해야 합니다.

if (x + 1 == n || triangle[y][x + 1] != 0) break;
x += 1;

결과적으로 아래로 이동하는 코드는 다음과 같이 작성됩니다.

// 아래로 이동
while (true) {
    triangle[y][x] = v++;
    if (y + 1 == n || triangle[y + 1][x] != 0) break;
    y += 1;
}
if (x + 1 == n || triangle[y][x + 1] != 0) break;
x += 1;

 

3-B. 오른쪽으로 이동하면서 숫자 채우기

아래로 이동하는 코드를 작성했다면 나머지 두 방향은 어렵지 않습니다. 같은 원리로 작성하면서 x, y 값만 바꾸어 주면 됩니다. 앞서 작성한 코드를 응용하면 오른쪽으로 이동하는 코드는 다음과 같이 완성됩니다.

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