actionscript 3 - इनपुट पाठ एक पूर्णांक बदलता है? AS3



actionscript-3 (1)

12312312312321312 -1715645152 में बदल जाता है

अंकों की वह राशि पूर्णांक डेटा प्रकार में फिट नहीं होगी। प्रत्येक int को Number साथ बदलें और फिर से परीक्षण करें।

यानी: var numb:Number=0; और var amount:Number=0; और numb=Number(input.text);

मैं कोलेज़ अनुमान के छोटे एएस 3 फ़ंक्शन बना रहा हूं यह कोड है:

import flash.events.Event;
import flash.events.MouseEvent;

var numb:int=0
var amount:int=0
button.addEventListener(MouseEvent.CLICK, buttonclick)
function buttonclick(buttonclicked:MouseEvent):void{
    numb=int(input.text)
    trace(numb)
    amount=0
}
stage.addEventListener(Event.ENTER_FRAME, equate)
function equate(equate:Event):void{
    dynam.text=amount.toString() + "\n" + numb.toString();;
    if(numb !=0 && numb !=1){
        if(numb % 2 == 0){
            numb=numb/2
            amount+=1
        }
        else{
            numb=numb*3+1
            amount+=1
        }
    }
}

हालांकि, कभी-कभी पाठ इनपुट एक नकारात्मक संख्या बन जाता है।

123123123123 -1430 9 28461 में बदल जाता है

12312312312321312 -1715645152 में बदल जाता है

और इसी तरह।

मुझे पता नहीं क्यों, लेकिन मुझे लगता है कि इसके साथ क्या करना है

numb=int(input.text)

लेकिन मैं पूर्ण मूल्य नहीं करना चाहता, क्योंकि तब समीकरण गलत परिणाम देगा। यदि आप इसे नकारात्मक संख्या पर रोकना चाहते हैं (और स्वयं का परीक्षण करें) ऐसा करें:

if(numb !=0 && numb !=1 && numb>1)

के बजाय

if(numb !=0 && numb !=1)