20. 놀라운 Part 4

여러분 대부분 알아내셨듯이, 비퍼를 내려 놓은 후에 너무나도 서둘러서 리보그에게 앞으로 전진하게 명령을 한 것입니다. 앞으로 움직이기 전에 벽이 있는지를 확인하는 단계가 필요합니다. 여기 해답이 있습니다.

def turn_right():
    repeat(turn_left, 3)

put_beeper()
# begin changes
if not front_is_clear():
    turn_left()
# end changes
move()
while not on_beeper():
    if right_is_clear():
        turn_right()
        move()
    elif front_is_clear():
        move()
    else:
        turn_left()

turn_off()

지금 당장 테스트해보고 정상적으로 작동하는지 확인하세요. 이 프로그램이 동작할 것 같지 않는 상황을 상상할 수 있나요?

previous 놀라운 Part 3 - home - 놀라운 Part 5 next