목표 : 여러 가지 함수에 맞추어 해결 방법을 분해해 보세요.
방금 배웠듯이 간단한 작업을 수행하는 함수를 정의하고 다른 함수 내에서 해당 함수를 호출하여 더욱 큰 작업을 수행하는 것은 정말 유용한 기술입니다.
계속 연습하면 코드를 더 읽기 쉽게 만들 수 있습니다. 가령, turnAround()처럼 목적에 맞게 함수 이름을 지정할 수 있기 때문이죠. 더 큰 작업을 수행하는 함수를 만들었기 때문에 개별적인 명령에 대해서는 더 이상 생각할 필요가 없으므로 코드를 작성하는 과정도 간단해집니다.
1. 코드를 실행하여 solveRow()가 호출되면 어떤 결과가 나타나는지 확인합니다.
2. 더 큰 문제를 해결하도록 solveRow()의 코드를 수정합니다.
3. solveRow()를 다른 명령과 조합하여 퍼즐을 해결합니다.
-----------------------------------------------------------------------
func collectGemTurnAround() {
moveForward()
moveForward()
collectGem()
turnLeft()
turnLeft()
moveForward()
moveForward()
}
func solveRow() {
collectGemTurnAround()
collectGemTurnAround()
turnLeft()
turnLeft()
turnLeft()
moveForward()
turnLeft()
}
solveRow()
solveRow()
solveRow()
-----------------------------------------------------------------------
* 저의 생각으로 짜인 것으로 꼭 정답은 아닙니다.
'IOS > [Swift Playgrounds] 코딩 배우기 1' 카테고리의 다른 글
[For 루프] 루프 사용하기 (0) | 2021.06.29 |
---|---|
[함수] 보물찾기 _ <도전 과제> (0) | 2021.06.29 |
[함수] 패턴 내포 (0) | 2021.06.29 |
[함수] 방방곡곡 다니기 _ <도전 과제> (0) | 2021.06.29 |
[함수] 수집, 작동, 반복 _ <도전 과제> (0) | 2021.06.29 |
Comment