loop
ํํ์
๋ง์ง๋ง์ผ๋ก, ๋ฌดํ ๋ฃจํ๋ฅผ ๋ง๋๋ loop
ํค์๋๊ฐ ์์ต๋๋ค.
๋ฐ๋ผ์ ๋ฐ๋์ break
๋๋ return
์ ์ฌ์ฉํด์ ๋ฃจํ๋ฅผ ์ ์งํด์ผ ํฉ๋๋ค:
fn main() { let mut x = 10; loop { x = if x % 2 == 0 { x / 2 } else { 3 * x + 1 }; if x == 1 { break; } } println!("Final x: {x}"); }
loop
๋ฅผ ๊ฐ(์:break 8
)์ผ๋ก ๋๋๊ณ ์ถ๋ ฅํฉ๋๋ค.loop
๋ non-trivial ๊ฐ์ ๋ฐํํ๋ ์ ์ผํ ๋ฐ๋ณต๋ฌธ์ ๋๋ค. ์ด๋while
๋ฐfor
๋ฐ๋ณต๋ฌธ๊ณผ ๋ฌ๋ฆฌ ์ต์ํ ํ ๋ฒ์ ๋ฃจํ๋ฌธ์ ์ํํ๋ ๊ฒ์ด ๋ณด์ฅ๋๊ธฐ ๋๋ฌธ์ ๋๋ค.