Menu
Coddy logo textTech

반복문 레이블

Coddy Rust 여정의 Fundamentals 섹션에 포함된 레슨 — 75개 중 42번째.

Rust의 레이블은 중첩된 루프에서 특정 루프를 중단(break)하거나 계속(continue)할 수 있도록 도와줍니다. 루프 앞에 'label:을 추가하여 레이블을 지정하세요.

예를 들어:

'outer: for i in 1..=3 {
    'inner: for j in 1..=3 {
        if i * j > 5 {
            break 'outer;
            // 이 코드는 바깥쪽 루프를 중단시킵니다
        }
        println!("({}, {})", i, j);
    }
}

이 예제에서는 'outer'inner라는 레이블이 붙은 두 개의 중첩된 루프가 있습니다. ij의 곱이 5보다 크면 break 'outer; 문이 실행되어 바깥쪽 루프를 종료합니다. 이 코드의 출력 결과는 다음과 같습니다:

(1, 1)
(1, 2)
(1, 3)
(2, 1)
(2, 2)

마찬가지로, continue 'label;을 사용하여 지정된 루프의 다음 반복으로 계속 진행할 수 있습니다. 예를 들어:

'outer: for i in 1..=3 {
    'inner: for j in 1..=3 {
        if i == j {
            continue 'outer;
            // 이것은 바깥쪽 루프를 계속 진행합니다
        }
        println!("({}, {})", i, j);
    }
}

이 경우, ij와 같을 때 continue 'outer; 문이 실행되어 내부 루프의 나머지 부분을 건너뛰고 외부 루프의 다음 반복을 계속합니다. 출력 결과는 다음과 같습니다:

(2, 1)
(3, 1)
(3, 2)
challenge icon

챌린지

초급

합이 10보다 크고 곱이 12의 배수인(곱을 12로 나누었을 때 나머지가 없는) 첫 번째 숫자 쌍 (i, j)를 찾기 위해 레이블이 지정된 루프(labeled loops)를 사용하는 Rust 프로그램을 작성하세요.  프로그램은 i를 1부터 20까지, j를 1부터 20까지 반복해야 합니다.

쌍을 찾으면 (i, j) 형식으로 출력하고 바깥쪽 루프를 빠져나오세요.

치트 시트

Rust에서 레이블(Labels)은 중첩된 루프 중에서 특정 루프를 중단(break)하거나 계속(continue)하도록 도와줍니다. 루프 앞에 'label:을 추가하여 레이블을 지정할 수 있습니다.

특정 레이블이 지정된 루프를 종료하려면 break 'label;을 사용하세요:

'outer: for i in 1..=3 {
    'inner: for j in 1..=3 {
        if i * j > 5 {
            break 'outer;  // 외부 루프를 중단합니다
        }
        println!("({}, {})", i, j);
    }
}

특정 레이블이 지정된 루프의 다음 반복으로 넘어가려면 continue 'label;을 사용하세요:

'outer: for i in 1..=3 {
    'inner: for j in 1..=3 {
        if i == j {
            continue 'outer;  // 외부 루프를 계속합니다
        }
        println!("({}, {})", i, j);
    }
}

직접 해보기

fn main() {
    'outer: for i in 1..=20 {
        for j in 1..=20 {
            // Your logic here
            
            
            break 'outer;
        }
    }
}
quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

Fundamentals의 모든 레슨