這是swift playgrounds中“學(xué)習(xí)編程1”里面的最后1節(jié)課了铺峭。最后一項(xiàng)挑戰(zhàn)的算法設(shè)計(jì)很多,可以多次嘗試不同的解決辦法汽纠。
我還是沿用上節(jié)課的方法,先定義一個(gè)繞墻走的函數(shù)虱朵,用這個(gè)函數(shù)莉炉,解決轉(zhuǎn)向的問題。
1碴犬,if 前面不受阻:前進(jìn)絮宁;
2,else if 前面受阻&&左面不受阻:左轉(zhuǎn)服协,前進(jìn)绍昂;
3,else if 前面受阻&&右面不受阻:右轉(zhuǎn)偿荷,前進(jìn)窘游;
然后我們來編寫while循環(huán),這個(gè)循環(huán)的條件有點(diǎn)難跳纳,我們先看一下什么時(shí)候就停止前進(jìn):
當(dāng)前面受阻忍饰,左側(cè)受阻,右側(cè)受阻時(shí)寺庄,停止前進(jìn)艾蓝。
那么這個(gè)循環(huán)的條件就可以寫成:
!前面受阻 II 斗塘!左側(cè)受阻 II 饶深!右側(cè)受阻
所以我們最好的循環(huán)就是這樣的:
到這里,“學(xué)習(xí)編程1”的內(nèi)容就全部被我們攻克了逛拱,是不是有點(diǎn)小興奮暗欣濉?
大家繼續(xù)努力朽合,還有更多的挑戰(zhàn)等著我們呢俱两!