8 dames sur un échiquier

Soyez le premier à donner votre avis sur cette source.

Snippet vu 7 250 fois - Téléchargée 17 fois

Contenu du snippet

Placer huit dames sur un échiquier sans qu'elles puissent se prendre.....................................................

Source / Exemple :


<HTML><HEAD><TITLE>Dames</TITLE><STYLE>td{width:20px;height:20px;font-family:Verdana,Arial,Helvetica;font-size:12px;text-align:center;color:white}</STYLE></HEAD>
<BODY bgcolor="silver"><hr /><SCRIPT language="JavaScript"><!--
var n=8,b=0,p=new Array();
reines(0);
function abm(a,b){return a<b?b-a:a-b;}
function conflit(i,j,x,y){return (i==x)||(j==y)||(abm(i,x)==abm(j,y));}
function compat(i,j){for(var k=0;k<i;k++)if(conflit(i,j,k,p[k]))return false;return true;}
function reines(i){if(i>=n)return affiche();for(var j=0;j<n;j++)if(compat(i,j)){p[i]=j;reines(i+1);}}
function affiche()
{
 var x,y,a=new Array();
 for(x=0;x<n*n;x++)a[x]="";//"&nbsp;";
 for(x=0;x<n;x++)a[p[x]+n*x]="®";//&#174";
 with(document)
 {
  write("<table border='1px' width='"+20*n+"px' height='"+20*n+"px' cellpadding='0' cellspacing='0'>");
  for(y=0;y<n;y++)
  {
   write("<tr>");
   for(x=0;x<n;x++)
   {
    if((x+y)%2)write("<td bgcolor='black'>"+a[n*y+x]+"</td>");
    else write("<td bgcolor='white'><font color='black'>"+a[n*y+x]+"</font></td>");
   }
   write("</tr>");
  }
  write("</table>"+ ++b+"<hr>");
 }
}
//--></SCRIPT>8 dames sur un échiquier...</BODY></HTML>

A voir également

Ajouter un commentaire

Commentaire

Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
32
intéressant aussi.
plus simple, "manuellement", à résoudre
que le cavalier me semble-t-il.

et ça ?

placer les 16 pièces blanches ( ou noires )
sur un échiquier, sans qu'elles puissent se prendre.
les Fous sur des couleurs différentes,
aucun Pion en ligne 1 ou 8.
@+

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.