موضوع قبلی

25. پالایش‌ها: بخش ۳

موضوع بعدی

27. پالایش‌ها: بخش ۵

26. پالایش‌ها: بخش ۴

همان طور که حتماً فهمیده‌اید؛ ما خیلی عجله داریم که ریبرگ را بعد از گذاشتن نشانه به جلو بفرستیم. باید اوّل بررسی کنیم ببینیم دیواری هست که جلوی حرکت ریبرگ را بگیرد. این راه حل این است:

put()

if  not  front_is_clear():
    turn_left()

move()

while  not  object_here():
    if  right_is_clear():
        turn_right()
        move()

    elif  front_is_clear():
        move()

    else :
        turn_left()

امتحان کنید!

این برنامه را امتحان کنید و آیا ببینید کار می‌کند؟ آیا می‌توانید موقعیّتی را تصوّر کنید که این برنامه در آن کار نکند؟