[조건 코드] 스마트하게 함수 정의하기
728x90

playgrounds - 코딩 배우기 1 - 스마트하게 함수 정의하기

 

목표 : 함수, 루프, 조건식을 사용하여 보석을 수집하거나 스위치를 작동시켜 보세요.

 

이번 퍼즐에서는 앞으로 한 번 움직일 때마다 보석이나 스위치가 나타나거나 아무 것도 나타나지 않을 수 있습니다. 퍼즐을 실행하면 와이어프레임에서 항목이 표시될만한 장소를 보여줍니다. if 구문을 많이 사용하여 퍼즐을 해결할 수도 있지만 그보다 나은 방법이 있습니다.

 

퍼즐을 단순한 패턴으로 먼저 나누어 보세요. 퍼즐에는 경로가 크게 3가지가 있습니다. 각 경로에는 2개의 보석이나 스위치가 존재할 확률이 있습니다.

 

1. if 구문을 사용하여 타일의 내용을 확인하는 collectOrToggle() 함수를 정의합니다.

2. 함수를 정의한 다음, collectOrToggle() 및 다른 명령을 호출하여 퍼즐을 해결합니다.

 

---------------------------------------------------------------------------------

 

func collectOrToggle() {

     if isOnGem() {

          collectGem()

     }

     else if isOnClosedSwitch {

          toggleSwitch()

     }

}

 

for i in 1 ... 4 {

     moveForward()

     collectOrToggle()

}

turnLeft()

for i in 1 ... 2 {

     moveForward()

     collectOrToggle()

}

turnLeft()

for i in 1 ... 4 {

     moveForward()

     collectOrToggle()

}

turnRight()

collectOrToggle()

moveForward()

turnRight()

collectOrToggle()

 

for i in 1 ... 4 {

     moveForward()

     collectOrToggle()

}

 

---------------------------------------------------------------------------------

 

* 저의 생각으로 짜인 것으로 꼭 정답은 아닙니다.

 

728x90