ํ์ด์ฌ ๊ฐ๋ฐ ๊ณผ์
์ฑํฐ 6
>
๋ ๋ฒจ 4
๋ชฉํ
๋ฃจํ ์กฐ๊ฑด์ ์ฌ์ฉํ์ฌ ๊ฑด๋ฌผ ์ฌ์ด ๋ณต๋์ ์๋ ์ก์ด๋ฅผ ์ ๊ฑฐํ์ธ์.
๊ฑด๋ฌผ ์ฌ์ด ๋ณต๋์ ์ก์ด๊ฐ ์๋ผ๊ณ ์์ผ๋, ๋ฃจํ๋ฅผ ์ฌ์ฉํ์ฌ ๋ชจ๋ ์ก์ด๋ฅผ ๋ชจ์ ๋ฒ๋ฆฌ์ธ์. ๋ฃจํ ์กฐ๊ฑด์ ์ด์ฉํ๋ฉด ์ด ๊ณผ์ ์ ์๋ํํ ์ ์๋ ๋ฐฉ๋ฒ๋ค์ด ์์ต๋๋ค.
bag ์ด๋ผ๋ ๋ณ์๋ฅผ ์์ฑํ๊ณ , ์ก์ด๋ฅผ ์ฃผ์ธ ๋๋ง๋ค ์ด ๋ณ์์ ์ ์ฅํ์ธ์. ์กฐ๊ฑด๋ฌธ์ด ํฌํจ๋ while ๋ฃจํ๋ฅผ ์ฌ์ฉํ์ฌ ๊ณผ์ ์ ์๋ํํ์ธ์. ์ ์ฒด ์ก์ด๋ ์ด(10) ๊ฐ์
๋๋ค.
while True: player.move_forward() bag += 1 if bag == 10: break
while ๋ฃจํ๋ฅผ True๋ก ์ค์ ํ๋ฉด, break ์ฐ์ฐ์๊ฐ ์ฌ์ฉ๋์ด ๋ฃจํ๊ฐ ์ข
๋ฃ๋์ง ์๋ ํ ๊ณ์ ์คํ๋ฉ๋๋ค. ๊ฐ ๋ฃจํ ์ฌ์ดํด๋ง๋ค ์ก์ด ํ๋๊ฐ ๊ฐ๋ฐฉ์ ์ถ๊ฐ๋๋ฉฐ, ๋ชจ์ธ ์ก์ด์ ์๋ฅผ ํ์ธํ์ฌ ๋ฃจํ๋ฅผ ์ข
๋ฃํ ์ง ๊ฒฐ์ ํฉ๋๋ค. if ๋ฌธ์ ๊ฐ๋ฐฉ์ ๋ด๊ธด ์ก์ด์ ์๋ฅผ ํ์ธํ๊ณ , ์ ํด์ง ์์ ๋๋ฌํ๋ฉด ๋ฃจํ๋ฅผ breakํ ์ง๋ฅผ ๊ฒฐ์ ํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค.
๋ณต๋๋ฅผ ์ง๋๊ฐ ํ, for ๋ฃจํ๋ฅผ ์ฌ์ฉํ์ฌ X ํ์๊ฐ ์๋ ์์น์์ place() ํจ์๋ฅผ ํตํด ์ก์ด๋ฅผ ์ปจํ
์ด๋์ ๋ฒ๋ฆฌ์ธ์. ๊ฐ ์ปจํ
์ด๋ ์ฌ์ด์ ๋จ๊ณ ์๋ ์ค๊ฐ์ ๊ฐ๊ฒฉ์ด ์์ด ์ผ์ ํ์ง ์์ต๋๋ค. continue ์ฐ์ฐ์๋ฅผ ์ฌ์ฉํ๋ฉด, if ๋ฌธ์ ํตํด ์กฐ๊ฑด์ ๊ฒ์ฌํ์ฌ ํด๋น ๋ฃจํ ์ฌ์ดํด์ ๊ฑด๋๋ธ ์ ์์ต๋๋ค.
for x in range(3): player.move_forward() if x == 1: continue player.turn_right() player.place(bag/2) player.turn_left()
์ ์ฝ๋์์, if ๋ฌธ์ ๋ฃจํ ์ฌ์ดํด์ ์์ธ x๊ฐ 1์ธ์ง ํ์ธํฉ๋๋ค. ์ด for ๋ฃจํ๋ range()์ ์ํด ์ ์๋ ๋๋ก ์ธ(3) ๋ฒ ์คํ๋๋ฉฐ, x๊ฐ 0๋ถํฐ ์์ํด 0, 1, 2๊น์ง ๋ฐ๋ณต๋ฉ๋๋ค. ๋ฃจํ ์ฌ์ดํด์ด 1์ธ ๊ฒฝ์ฐ์๋ ์กฐ๊ฑด์ด ์ถฉ์กฑ๋์ด continue ์๋์ ์ฝ๋๊ฐ ์คํ๋์ง ์๊ณ ๊ฑด๋๋ฐ์ด์ง๋๋ค. ์ด๋ฅผ ํตํด ์ค์ ์ฌ์ดํด์ ๊ฑด๋๋ฐ์ด ๋ ์ปจํ
์ด๋ ์ฌ์ด์ ๊ฐ๊ฒฉ์ ํผํ ์ ์์ต๋๋ค.
์ปจํ
์ด๋๊ฐ ๋(2) ๊ฐ ์์ผ๋ฏ๋ก, ์ ์ฒด ์ก์ด ์๋ฅผ ๋๋์ด bag ๋ณ์์ ์ ์ฅ๋ ์ก์ด๋ฅผ place() ํจ์๋ฅผ ์ฌ์ฉํ์ฌ ๋ฒ๋ฆฌ์ธ์. ์๋ฅผ ๋ค์ด: player.place(bag/2) .
์ก์ด๋ฅผ ๋ชจ๋ ๋ชจ์ ์ ์ ํ ์์น์ ๋ฐฐ์นํ ํ, ๋ณ์ด ํ์๋ ์ถ๊ตฌ์ ๋๋ฌํ์ฌ ๋ ๋ฒจ์ ์๋ฃํ์ธ์.