WEB开发网
开发学院图形图像Flash Think in ActionScript 3.0Ⅲ 阅读

Think in ActionScript 3.0Ⅲ

 2009-05-30 12:07:59 来源:WEB开发网   
核心提示: 下面用面向过程的思想写这个程序,通过读注释先来看一下这个程序:// 有 5 个小孩儿围成的圈var array:Array = new Array(5);for (var i = 0; i < array.length; i++) { // 如果元素值为 true 表示他在圈内,T

下面用面向过程的思想写这个程序,通过读注释先来看一下这个程序:

// 有 5 个小孩儿围成的圈
var array:Array = new Array(5);
for (var i = 0; i < array.length; i++) {
    // 如果元素值为 true 表示他在圈内,如果是 false 表示不在圈内
    array[i] = true;
}
           
// 圈内还剩多少人,最开始人都在,等于 array.length
var leftCount:int = array.length;
// 当前所报的数,初始为 0
var countNum:int = 0;
// 圈子的数组下标,表示当前指向的是谁
var index:int = 0;

while(leftCount > 0) {
    if (array[index] == true) {
        // 如果当前这个人在圈内则报数
        countNum++;
        if (countNum == 3) {
            // 如果所报的数是 3 则出列,剩余人数减1,并且下一次从新开始报数
            trace("out " + (index + 1));
            array[index] = false;
            leftCount--;
            countNum = 0;
        }
    }
               
    // 数组下标增加
    index++;
    if (index == array.length) {
        // 如果下标是最后一个位则归 0,因为这个圈是圆的
        index = 0;
    }
}

用 array 数组代表这个围成的圈,开始让圈数组中的每个元素都为 true,表示它们都在圈内,如果设为 false 则表示不在圈内,后面报数的时候就不予考虑了。

上一页  1 2 3 4  下一页

Tags:Think in ActionScript

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接