2012-07-05 67 views
0

在我的循環我有一個數字,是不斷變化的 - 我需要弄清楚如何判斷的數量增加或減少:檢查,如果數量正在減少或增加

是不工作的一些僞代碼: )

var now:Number; 
    var then:Number; 

    function loop():void 
    { 
     now = changingNumber; 
     then = changingNumber; 
     if (now > then) { 
      // increasing 
     }else { 
      // decreasing 
     } 
    } 
+0

如果序列既不增加也不減少,例如,輸出應該是什麼。 5 8 10 7 9 2?你想要整個序列的輸出還是隻輸出一對? – taskinoor 2012-07-05 09:36:44

回答

7
var now:int = 0; 
var thn:int = 0; 

function loop():void 
{ 
    // Change the number. 
    now = changingNumber; 

    if(now > thn) 
    { 
     trace("Got larger."); 
    } 
    else if(now < thn) 
    { 
     trace("Got smaller."); 
    } 
    else 
    { 
     trace("Maintained value."); 
    } 

    // Store the changed value for comparison on new loop() call. 
    // Notice how we do this AFTER 'now' has changed and we've compared it. 
    thn = now; 
} 

或者,你可以準備你的價值getter和setter和管理增加或減少在那裏。

// Properties. 
var _now:int = 0; 
var _thn:int = 0; 


// Return the value of now. 
function get now():int 
{ 
    return _now; 
} 


// Set a new value for now and determine if it's higher or lower. 
function set now(value:int):void 
{ 
    _now = value; 

    // Comparison statements here as per above. 
    // ... 

    _thn = _now; 
} 

此方法將更有效,不需要循環。

+1

+1。這正是我輸入的內容。你打了我〜10秒..:P – 2012-07-05 09:39:29

+0

@PranavHosangadi忍者技能我的朋友。 – Marty 2012-07-05 09:40:24

+0

+1。同樣在這裏>。< – 2012-07-05 09:47:20