何やら高尚なことを言おうとしていると思われるかもしれませんが複数環境でどの環境が使っていて楽しいかを知るのに基準となるソフトをいくつか決めてそれのソースの書きやすさとコンパイルや実行速度でみたらどうかと考えたので一応基準を決めたら良いかと
まずはretropc界隈でベンチマークの基準となっているmandelbrot集合をコンソールへ出力するBASIC言語のプログラムをlsi-c試食版で出してみる。
BASICのソースをできるだけ逐語訳的にc言語に書き換えたものがこちら
#include <stdio.h>
int main()
{
int x, y, i ;
float ca, cb, a, b, t ;
for (y = -12 ; y <= 12; y++) {
for (x = -39; x <= 39; x++) {
ca = x * 0.0458 ;
cb = y * 0.08333 ;
a = ca ;
b = cb ;
for(i = 0; i <=15; i++){
t = a*a - b*b + ca ;
b = 2 * a * b + cb ;
a = t ;
if ((a * a + b * b) > 4) break;
}
if (i<16){
printf("%X",i);
}else{
printf(" ");
}
}
printf("\n");
}
}
ここからグラフィックを使う本格的なものに発展させていこうと思う。
実行すると流石に1秒もかからずに終わるので時間計測の部分も考慮すること。
0 件のコメント:
コメントを投稿