if (knitr:::is_latex_output()) {
::asis_output('\\url{....}')
knitrelse {
} ::include_graphics("fig/Storm_01.gif")
knitr }
10 폭풍 후에 …
10.1 낙엽 청소 1
- 문제 바로가기
- 선행 지식
- 기본 함수 :
move()
,turn_left()
,take()
,toss()
- 테스트 조건:
object_here()
,carries_object()
,front_is_clear()
,wall_in_front()
- 반복
while
문과 제어 조건if
문을 사용
- 기본 함수 :
- 난이도: 4
10.1.1 실행결과
10.1.2 코드
def turn_right():
turn_left()
turn_left()
turn_left()
def turn_around():
turn_left()
turn_left()
while front_is_clear():
move()while object_here():
take()
turn_around()5:
repeat
move()
turn_right()
while carries_object():
toss()
10.2 낙엽 청소 2
- 문제 바로가기
- 선행 지식
- 기본 함수 :
move()
,turn_left()
,take()
,toss()
- 테스트 조건:
object_here()
,carries_object()
,front_is_clear()
,wall_in_front()
- 반복
while
문과 제어 조건if
문을 사용
- 기본 함수 :
- 난이도: 4
10.2.1 실행결과
if (knitr:::is_latex_output()) {
::asis_output('\\url{....}')
knitrelse {
} ::include_graphics("fig/Storm_02.gif")
knitr }
10.2.2 코드
def turn_around():
turn_left()
turn_left()
def turn_right():
turn_left()
turn_left()
turn_left()
def collect_leaves():
while front_is_clear():
while object_here():
take()
move()
def first_collect_leaves():
while front_is_clear():
while object_here():
take()
move()
turn_around()4:
repeat
move()
turn_right()
move()
turn_right()
collect_leaves()
turn_left()
move()
turn_left()
def go_to_beginning():
while object_here():
take()
turn_around()while not wall_in_front():
move()
turn_left()
move()
turn_left()
def go_to_home():
while not wall_in_front():
move()while object_here():
take()
turn_left()while not at_goal():
if front_is_clear():
move()elif right_is_clear():
turn_right()elif wall_in_front():
turn_left()
turn_right()while carries_object():
toss()
move()
first_collect_leaves()3:
repeat
collect_leaves()
go_to_beginning()
go_to_home()