8 dames sur un échiquier

0/5 (1 avis)

Snippet vu 7 862 fois - Téléchargée 19 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
cs_bultez
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
32
4 oct. 2007 à 10:24
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.