CX's JavaScript Diary

2008-03-12

丸に挑戦

12:15 | 丸に挑戦 - CX's JavaScript Diary を含むブックマーク はてなブックマーク - 丸に挑戦 - CX's JavaScript Diary

http://h.hatena.ne.jp/cx20/9236556444951569252

↓アドレスバーで実行(Sin/Cos曲線追加版)

JavaScript:with(Math){r=6;m=r*2+1;n=m*2;s=new Array(n);for(x=0;x<n;x++){s[x]=new Array(n);for(y=0;y<n;y++){if(y==m&&x<m){s[x][y]="┬";}else if(y<m&&x==m){s[x][y]="├";}else if(x>=m&&y>=m){s[x][y]=" ";}else {s[x][y]="┼";}}}for(t=0;t<m;t++){x=r-(round(sin(t*PI/r)*r));y=r+(round(cos(t*PI/r)*r));s[x][y]="○";s[m+t][x]="○";s[y][m+t]="○";}for(y=0;y<n;y++){l="";for(x=0;x<n;x++){l+=s[x][y];}document.write(l+"<br>");}}

JavaScript:with(Math)
{
    r=6;
    m=r*2+1;
    n=m*2;
    s=new Array(n);
    for(x=0;x<n;x++){
        s[x]=new Array(n);
        for(y=0;y<n;y++){
            if(y==m&&x<m){
                s[x][y]="┬";
            }
            else if(y<m&&x==m){
                s[x][y]="├";
            }
            else if(x>=m&&y>=m){
                s[x][y]=" ";
            }
            else {
                s[x][y]="┼";
            }
        }
    }
    for(t=0;t<m;t++){
        x=r-(round(sin(t*PI/r)*r));
        y=r+(round(cos(t*PI/r)*r));
        s[x][y]="○";
        s[m+t][x]="○";
        s[y][m+t]="○";
    }
    for(y=0;y<n;y++){
        l="";
        for(x=0;x<n;x++){
            l+=s[x][y];
        }
        document.write(l+"<br>");
    }
}

↓実行結果

┼┼┼┼┼┼○┼┼┼┼┼┼├┼┼○┼┼┼┼┼┼┼┼┼
┼┼┼○┼┼┼┼┼○┼┼┼├┼○┼○┼┼┼┼┼┼┼┼
┼┼┼┼┼┼┼┼┼┼┼┼┼├┼┼┼┼┼┼┼┼┼┼┼┼
┼○┼┼┼┼┼┼┼┼┼○┼├○┼┼┼○┼┼┼┼┼┼┼
┼┼┼┼┼┼┼┼┼┼┼┼┼├┼┼┼┼┼┼┼┼┼┼┼┼
┼┼┼┼┼┼┼┼┼┼┼┼┼├┼┼┼┼┼┼┼┼┼┼┼┼
○┼┼┼┼┼┼┼┼┼┼┼○○┼┼┼┼┼○┼┼┼┼┼○
┼┼┼┼┼┼┼┼┼┼┼┼┼├┼┼┼┼┼┼┼┼┼┼┼┼
┼┼┼┼┼┼┼┼┼┼┼┼┼├┼┼┼┼┼┼┼┼┼┼┼┼
┼○┼┼┼┼┼┼┼┼┼○┼├┼┼┼┼┼┼○┼┼┼○┼
┼┼┼┼┼┼┼┼┼┼┼┼┼├┼┼┼┼┼┼┼┼┼┼┼┼
┼┼┼○┼┼┼┼┼○┼┼┼├┼┼┼┼┼┼┼○┼○┼┼
┼┼┼┼┼┼○┼┼┼┼┼┼├┼┼┼┼┼┼┼┼○┼┼┼
┬┬┬┬┬┬┬┬┬┬┬┬○             
┼┼┼┼┼┼┼┼┼┼┼○┼             
┼┼┼┼┼┼┼┼┼○┼┼┼             
┼┼┼┼┼┼○┼┼┼┼┼┼             
┼┼┼○┼┼┼┼┼┼┼┼┼             
┼○┼┼┼┼┼┼┼┼┼┼┼             
○┼┼┼┼┼┼┼┼┼┼┼┼             
┼○┼┼┼┼┼┼┼┼┼┼┼             
┼┼┼○┼┼┼┼┼┼┼┼┼             
┼┼┼┼┼┼○┼┼┼┼┼┼             
┼┼┼┼┼┼┼┼┼○┼┼┼             
┼┼┼┼┼┼┼┼┼┼┼○┼             
┼┼┼┼┼┼┼┼┼┼┼┼○        

http://h.hatena.ne.jp/cx20/9236538851001361235

↓アドレスバーで実行

JavaScript:with(Math){var strMatrix=new Array(13);for(i=0;i<13;i++){strMatrix[i]=new Array(13);for(j=0;j<13;j++){strMatrix[i][j]="┼";}}for(t=0;t<=360;t+=30){x=(round(sin(t*PI/180)*6))+6;y=(round(cos(t*PI/180)*6))+6;strMatrix[x][y]="○";}for(i=0;i<13;i++){strLine="";for(j=0;j<13;j++){strLine+=strMatrix[i][j];}document.writeln(strLine+"<"+"br"+">");}}

↓実行結果

┼┼┼┼┼┼○┼┼┼┼┼┼
┼┼┼○┼┼┼┼┼○┼┼┼
┼┼┼┼┼┼┼┼┼┼┼┼┼
┼○┼┼┼┼┼┼┼┼┼○┼
┼┼┼┼┼┼┼┼┼┼┼┼┼
┼┼┼┼┼┼┼┼┼┼┼┼┼
○┼┼┼┼┼┼┼┼┼┼┼○
┼┼┼┼┼┼┼┼┼┼┼┼┼
┼┼┼┼┼┼┼┼┼┼┼┼┼
┼○┼┼┼┼┼┼┼┼┼○┼
┼┼┼┼┼┼┼┼┼┼┼┼┼
┼┼┼○┼┼┼┼┼○┼┼┼
┼┼┼┼┼┼○┼┼┼┼┼┼