while循环,在每次循环开始前测试循环条件是否成立
do-while循环,在每次循环之后测试循环条件是否成立
while循环
while循环由一个条件语句开始,如果条件语句为true,一直执行,直到条件语句变为false。下面是一个while循环的一般形式:
复制代码
while condition {
statements
}
下面的例子是一个简单的游戏,Snakes and Ladders,蛇和梯子:
游戏的规则是这样的:
游戏面板上有25个格子,游戏的目标是到达第25个格子;
每个回合通过一个6面的骰子来决定行走的步数,行走的路线按右图所示;
如果落在梯子的底部,那么就爬上那个梯子到达另外一个格子;
如果落到蛇的头部,就会滑到蛇尾部所在的格子。
游戏面板由一个Int数组组成,大小由一个常量设置finalSquare,同时用来检测是否到达了胜利的格子。游戏面板由26个Int数字0初始化(不是25个,因为从0到25有26个数字)
复制代码
let finalSquare = 25
var board = Int[](count: finalSquare + 1, repeatedValue: 0)
其中一些格子被设置为一些特定的值用来表示蛇或者梯子。有梯子的地方是整数,而有蛇的地方是负数:
复制代码
board[03] = +08; board[06] = +11; board[09] = +09; board[10] = +02
board[14] = -10; board[19] = -11; board[22] = -02; board[24] = -08
第三个格子是一个梯子的底部,表示玩家可以通过梯子到达第11格,因此设置board[3]为+08,表示前进8步。同理蛇的位置设置为负数,表示后退i步。
玩家从为0的格子开始游戏。









