flash on 2010-5-1
♥0 |
Line 44 |
Modified 2010-05-02 00:12:15 |
MIT License
archived:2017-03-20 06:44:39
ActionScript3 source code
/**
* Copyright uwi ( http://wonderfl.net/user/uwi )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/xv7t
*/
package {
import flash.display.Sprite;
import flash.text.TextField;
public class Test extends Sprite {
private var _tf : TextField;
public function Test() {
_tf = new TextField();
_tf.width = 465;
_tf.height = 465;
addChild(_tf);
var N : uint = 10;
var re : Array = new Array(1<<N);
var im : Array = new Array(1<<N);
var i : uint, j : uint, k : uint;
for(i = 0;i < 1 << N;i++){
re[i] = 0; im[i] = 0;
}
for(i = 0;i < N;i++){
var rec : Number = Math.cos(i / N * Math.PI * 2);
var imc : Number = Math.sin(i / N * Math.PI * 2);
for(j = 0;j < 1 << i;j++){
var base : uint = j << (N-i);
for(k = 0;k < 1 << (N - i - 1);k++){
re[k+base] += rec;
im[k+base] += imc;
}
}
}
var ct : uint = 0;
for(i = 0;i < 1 << N;i++){
var d2 : Number = re[i] * re[i] + im[i] * im[i];
if(d2 < 0.9999999999){
ct++;
// tr(d2, re[i], im[i]);
}
}
tr(ct);
tr(ct / (1<<N));
}
private function tr(...o : Array) : void
{
_tf.appendText(o + "\n");
}
}
}