Floating Number Calculation Test
♥0 |
Line 54 |
Modified 2011-02-18 19:02:13 |
MIT License
archived:2017-03-20 13:36:10
ActionScript3 source code
/**
* Copyright 9re ( http://wonderfl.net/user/9re )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/kWeE
*/
package {
import flash.utils.getTimer;
import flash.events.Event;
import flash.text.TextField;
import flash.display.Sprite;
public class FlashTest extends Sprite {
public function FlashTest() {
const MAX:int = 1<<24;
var log:TextField = new TextField;
log.width = 465;
addChild(log);
var tf:TextField = new TextField;
tf.width = tf.height = 465;
tf.y = 20;
tf.multiline = true;
tf.wordWrap = true;
addChild(tf);
var j:int, k:Number, len:int, d:int, l:int, n:int, i:int;
addEventListener(Event.ENTER_FRAME, onEnterFrame);
function loop():void {
for (n = 1; n < 7; ++n) {
var s:String;
j = n; k = i;
d = 1;
while (j--) {
d *= 10;
}
k /= d;
s = k.toString();
len = s.length;
l = (i + '').length;
if ((k < 1 && (len > l + n + 1)) || (k > 1 && (len > l + 1))) {
tf.appendText(<>{i} {n} {k}</>+'\n');
}
}
}
function onEnterFrame(event:Event):void {
var t:int = getTimer();
while (getTimer() - t < 10) {
if (++i == MAX) {
onComplete();
break;
}
log.text = i + ' : ' + ((i * 1000 / MAX)|0) / 10 + '% done';
loop();
}
}
function onComplete():void {
removeEventListener(Event.ENTER_FRAME, onEnterFrame);
tf.appendText('complete');
}
}
}
}