- <html><head><title>Carré magique</title><style type="text/css">div{position:absolute;top:100px;left:400px;}td{width:20px;height:20px;font-family:Verdana,Arial,Helvetica;font-size:12px;text-align:center;color:white}</style></head><body bgcolor="silver">
- <script language="Javascript"><!--
- var n=5;
- if(n<3)n=3;//n minimum à 3
- n|=1;//nombre impair uniquement
- var c=new Array();
- function affiche()
- {
- with(document)
- {
- clear();
- var i,j;
- write("<div><table border='1px' width='"+20*n+"px' height='"+20*n+"px' cellpadding='0' cellspacing='0'>");
- for(j=0;j<n;j++)
- {
- write("<tr>");
- for(i=0;i<n;i++)
- {
- // if((i+j)%2)write("<td bgcolor='black'>"+c[n*i+j]+"</td>");
- // else
- write("<td bgcolor='white'><font color='black'>"+c[n*i+j]+"</font></td>");
- }
- write("</tr>");
- }
- write("</table>Total : "+(1+((n*n)>>>1))*n+"</div>");
- }
- }
- function init()
- {
- var j,x=0,y=1,z;
- for(z=0;z<n*n;z++)c[z]=0;
- for(z=1;z<=n*n;z++)
- {
- c[n*y+x]=z;
- x=(x+2)%n;
- j=(y+1)%n;
- if(c[n*j+x]!=0)x=(x+2)%n;else y=j;
- }
- affiche();
- }
- init();
- //--></script></body></html>
<html><head><title>Carré magique</title><style type="text/css">div{position:absolute;top:100px;left:400px;}td{width:20px;height:20px;font-family:Verdana,Arial,Helvetica;font-size:12px;text-align:center;color:white}</style></head><body bgcolor="silver">
<script language="Javascript"><!--
var n=5;
if(n<3)n=3;//n minimum à 3
n|=1;//nombre impair uniquement
var c=new Array();
function affiche()
{
with(document)
{
clear();
var i,j;
write("<div><table border='1px' width='"+20*n+"px' height='"+20*n+"px' cellpadding='0' cellspacing='0'>");
for(j=0;j<n;j++)
{
write("<tr>");
for(i=0;i<n;i++)
{
// if((i+j)%2)write("<td bgcolor='black'>"+c[n*i+j]+"</td>");
// else
write("<td bgcolor='white'><font color='black'>"+c[n*i+j]+"</font></td>");
}
write("</tr>");
}
write("</table>Total : "+(1+((n*n)>>>1))*n+"</div>");
}
}
function init()
{
var j,x=0,y=1,z;
for(z=0;z<n*n;z++)c[z]=0;
for(z=1;z<=n*n;z++)
{
c[n*y+x]=z;
x=(x+2)%n;
j=(y+1)%n;
if(c[n*j+x]!=0)x=(x+2)%n;else y=j;
}
affiche();
}
init();
//--></script></body></html>