如果你上一關自己完成了,恭喜你,那么你已經開始入門算法了。
算法,可以理解成為計算機執(zhí)行命令的過程方法。
比方說,你要喝果汁,首先要獲得水果(1),其次準備好器皿(2),然后制作果汁(3),最后喝掉它(4)??赡苡械目梢韵茸?,有的必須在某項工作完成之后才能做。
1234的順序可以實現。
2134的順序也可以實現。
但3214的順序就不能實現。

要把上一次做好的右轉定則看一看,比一比。
代碼如下:
func navigateAroundWall() { //繞墻的方法
? ? if !isBlocked && !isBlockedRight { //前面和右邊同時沒有堵路口
? ? ? ? turnRight()
? ? ? ? moveForward()
? ? }else if isBlocked && !isBlockedRight { ?//前面堵,右邊不堵的地方
? ? ? ? turnRight()
? ? ? ? moveForward()
? ? }else if !isBlocked && isBlockedRight { //前面不堵,右邊堵的地方
? ? ? ? moveForward()
? ? }else if isBlocked && isBlockedRight { //前面堵,右邊也堵的地方
? ? ? ? turnLeft()
? ? }
? ? }
while !isOnClosedSwitch { //沒有到達關的開關的位置時
? ? navigateAroundWall() //繞墻的方法
? ? if isOnGem { ?//遇到寶石就收集
? ? ? ? collectGem()
? ? ? ? turnRight()
? ? ? ? turnRight()
? ? }
}
toggleSwitch() //最后切換開關。
傳送門:
MacOS Playgrounds學習 學習編程一 前記--http://www.itdecent.cn/p/a0de277374a4
MacOS Playgrounds 學習編程一 第一關 發(fā)出命令--http://www.itdecent.cn/p/3c85397f1eae
MacOS Playgrounds 學習編程一 第二關 添加新命令--http://www.itdecent.cn/p/4efa5c18dc50
MacOS Playgrounds 學習編程一 第三關 切換開關--http://www.itdecent.cn/p/00556d6430bf
MacOS Playgrounds 學習編程一 第四關 傳送門練習--http://www.itdecent.cn/p/47bd57d0193f
MacOS Playgrounds 學習編程一 第五關 發(fā)現并修復程序錯誤--http://www.itdecent.cn/p/5bc9200edbbe
MacOS Playgrounds 學習編程一 第六關 消滅程序錯誤練習--http://www.itdecent.cn/p/f19bd2955ed8
MacOS Playgrounds 學習編程一 第七關 最短路線--http://www.itdecent.cn/p/1ef210253be5
MacOS Playgrounds 學習編程一 第八關 組合新行為--http://www.itdecent.cn/p/f548b1fd3134
MacOS Playgrounds 學習編程一 第九關 創(chuàng)建新函數--http://www.itdecent.cn/p/22ab39aaea97
MacOS Playgrounds 學習編程一 第十關 收集、切換、重復--http://www.itdecent.cn/p/e43d60f98bc7
MacOS Playgrounds 學習編程一 第十二關 嵌套模式--http://www.itdecent.cn/p/645f6716217c
MacOS Playgrounds 學習編程一 第十三關 嵌入式階梯--http://www.itdecent.cn/p/d87f9662601d
MacOS Playgrounds 學習編程一 第十四關 尋寶--http://www.itdecent.cn/p/18c73154e46b
MacOS Playgrounds 學習編程一 第十五關 使用循環(huán)--http://www.itdecent.cn/p/f7c0866930ec
MacOS Playgrounds 學習編程一 第十六關 循環(huán)每一側--http://www.itdecent.cn/p/94d75e9d5eab
MacOS Playgrounds 學習編程一 第十七關 行至邊緣再返回--http://www.itdecent.cn/p/cc7e8095bb9a
MacOS Playgrounds 學習編程一 第十八關 循環(huán)跳躍者--http://www.itdecent.cn/p/99618bef896e
MacOS Playgrounds 學習編程一 第十九關 拓展技能--http://www.itdecent.cn/p/a20810b11d6d
MacOS Playgrounds 學習編程一 第二十關 寶石農場--http://www.itdecent.cn/p/8c3808d1a646
MacOS Playgrounds 學習編程一 第二十一關 席卷四處--http://www.itdecent.cn/p/cc7f6a1c34e7
MacOS Playgrounds 學習編程一 第二十二關 檢查開關--http://www.itdecent.cn/p/e34fb0431b6e
MacOS Playgrounds 學習編程一 第二十三關 使用 else if--http://www.itdecent.cn/p/6414ef7692e2
MacOS Playgrounds 學習編程一 第二十四關 循環(huán)條件代碼--http://www.itdecent.cn/p/a657e47b851d
MacOS Playgrounds 學習編程一 第二十五關 滿足條件時向上爬--http://www.itdecent.cn/p/4a69a1c3435f
MacOS Playgrounds 學習編程一 第二十六關 定義更巧妙的函數--http://www.itdecent.cn/p/d61e03e095ae
MacOS Playgrounds 學習編程一 第二十七關 圍困其中--http://www.itdecent.cn/p/88442c7ce61b
MacOS Playgrounds 學習編程一 第二十八關 決策樹--http://www.itdecent.cn/p/0843bd9ae286
MacOS Playgrounds 學習編程一 第二十九關 使用“非”運算符--http://www.itdecent.cn/p/be8fa74b6c46
MacOS Playgrounds 學習編程一 第三十關 非之螺旋--http://www.itdecent.cn/p/f42905cbaed1
MacOS Playgrounds 學習編程一 第三十一關 檢查這個與那個--http://www.itdecent.cn/p/67b1c6e16b6a
MacOS Playgrounds 學習編程一 第三十二關 檢查這個或那個--http://www.itdecent.cn/p/d94a67728a93
MacOS Playgrounds 學習編程一 第三十三關 邏輯迷宮--http://www.itdecent.cn/p/62bbc0ce2490
MacOS Playgrounds 學習編程一 第三十四關 當……時運行代碼--http://www.itdecent.cn/p/9aa41733c6d0
MacOS Playgrounds 學習編程一 第三十五關 創(chuàng)建更巧妙的while循環(huán)--http://www.itdecent.cn/p/3fdfb33a443f
MacOS Playgrounds 學習編程一 第三十六關 正確選取工具--http://www.itdecent.cn/p/e5ed25be735e
MacOS Playgrounds 學習編程一 第三十七關 四乘以四--http://www.itdecent.cn/p/81ed2e6009d4
MacOS Playgrounds 學習編程一 第三十八關 轉身--http://www.itdecent.cn/p/a3c9bae7d6a2
MacOS Playgrounds 學習編程一 第三十九關 富饒之地--http://www.itdecent.cn/p/077743cdfcdd
MacOS Playgrounds 學習編程一 第四十關 套嵌循環(huán)--http://www.itdecent.cn/p/d8670c9e7962
MacOS Playgrounds 學習編程一 第四十一關 隨機矩形--http://www.itdecent.cn/p/61b916f61e37
MacOS Playgrounds 學習編程一 第四十二關 始終右轉--http://www.itdecent.cn/p/b7cf92fbfcaa
MacOS Playgrounds 學習編程一 第四十三關 右手定則--http://www.itdecent.cn/p/9ccd20151c96
MacOS Playgrounds 學習編程一 第四十四關 調整算法--http://www.itdecent.cn/p/10c2a0de990d
MacOS Playgrounds 學習編程一 第四十五關 征服迷宮--http://www.itdecent.cn/p/b4d731fe3639
MacOS Playgrounds 學習編程一 第四十六關 左轉還是右轉--http://www.itdecent.cn/p/cd7fa32316e5
MacOS Playgrounds 學習編程一 第四十七關 向左走,向右走--http://www.itdecent.cn/p/b9b1dc9c8f2e
MacOS Playgrounds學習 學習編程一 小結后記--http://www.itdecent.cn/p/8ad6485e447a