Aller au contenu

yuuzhantar

Actif
  • Compteur de contenus

    11
  • Inscrit(e) le

  • Dernière visite

Messages postés par yuuzhantar

  1. bonjour

    je voudrais savoir si il existe un moyen de créer un script qui génère des mots ( même si ils sont incompréhensibles )

    je pense déjà savoir ce qu'il lui faut mais je ne sais pas comment l'écrire

    une liste de caractères

    carac = array(a,b,c,d,e,f)

    une longueur de mot

    long = '3';

    voila

    après se serait comme un compteur

    il ferait toutes les combinaisons possibles de 3 caractères de longueur avec les caractères disponibles

    voila se qu'il ferait

    aaa

    aab

    aac

    aad

    aae

    aaf

    aba

    abb

    abc

    abd

    abe

    abf

    aca

    acb

    ...

    est ce possible ???

    merci d'avance pour votre aide

    yann

  2. je voudrais savoir si il est possible de le modifier un petit peu pour pouvoir extraire deux variables :

    $sudoku = 4987431637814 ...

    ( tous les chiffres du sudoku à la suite par ligne )

    et

    $masque = 01001101101100 ...

    ( pareil que pour $sudoku mais avec 0 masqué et 1 affiché )

    par ce que je voudrais faire avec ceci du traitement mysql mais le script est trop compliqué pour moi

    merci d'avance pour votre aide

    yann

  3. Bonjour

    j'ai trouvé ce code sur internet

    http://www.asp-php.net/ressources/bouts_de_code.php?id=681


    <HEAD>
    <TITLE>Su-Duku en PHP</TITLE>
    <META name="author" content="Tedheu">
    <STYLE type="text/css">
    BODY, TD { font: normal 12px verdana,arial; color: navy; line-height: 14px;}
    </STYLE>
    </HEAD>
    <BODY>
    <H3>Création de grilles Su-Doku en PHP</H3>
    <HR>
    <!-- code PHP -->
    <?
    print " --> <BR>\n";
    /********* les variables *************/
    // grille 'SuDoku', caractères de "1" à "9", case $i,$j
    $Grille = array();
    // masque de la grille: 0 = non masquable, 1 = la case peut être masquée
    $Masque = array();
    // loterie est une chaine de caractères pour le tirage des cases restantes
    $loterie = "";
    // variable collision pour tester le cas où on tirerais la même case
    $collision = 0;
    // la grille est divisée en 9 régions, 9 lignes et 9 colonnes
    // les tableaux $Reg,$Lgn,$Col sont indexés 'numéro,chiffre' ($n,$m m=chiffre-1)
    // les valeurs sont des chaines de caractères indiquant les positions possibles
    $Reg = array();
    $Lgn = array();
    $Col = array();
    //
    /********* fonctions *************/
    function initialisation(){
    global $Grille ,$Masque ,$loterie ,$collision;
    global $Reg, $Lgn, $Col;
    $loterie = "";
    $collision = 0;
    // iniatisation, grille et masque, d'abord initialisée à '0'
    for ($i=0; $i<=8; $i++){
    for ($j=0; $j<=8; $j++){
    $Grille[$i][$j] = "0";
    $Masque[$i][$j] = 0;
    $loterie = $loterie.chr(97+$i).chr(48+$j);
    }
    }
    // Au début toutes les positions sont possibles
    for ($n=0; $n<=8; $n++){
    for ($m=0; $m<=8; $m++){
    $Reg[$n][$m] = "012345678";
    $Lgn[$n][$m] = "012345678";
    $Col[$n][$m] = "012345678";
    }
    }
    }
    //
    function elimination($i,$j,$m){
    global $Grille ,$Masque ,$loterie ,$collision;
    global $Reg, $Lgn, $Col;
    // case $i,$j , chiffre= $m+1
    // élimination du chiffre en mettant les positions possibles à rien (= "")
    $n = floor($i/3)*3+floor($j/3); // région concernée numéro $n
    $Reg[$n][$m] = "";
    $n = $i; // ligne concernée numéro $n
    $Lgn[$n][$m] = "";
    $n = $j; // Colonne concernée numéro $n
    $Col[$n][$m] = "";
    // élimination sélective des positions possibles dans les régions voisines
    for($n=0; $n<=8; $n++){
    for ($p=0; $p<=8; $p++){
    // $p est la position d'une case dans une région
    // position de la case en coordonnées 'grille', $ic,$jc
    $ic = floor($n/3)*3+floor($p/3);
    $jc = ($n-floor($n/3)*3)*3+($p-floor($p/3)*3);
    if ($ic==$i OR $jc==$j){
    $posi = Chr(48+$p);
    $Reg[$n][$m] = str_replace($posi,"",$Reg[$n][$m]);
    }
    }
    }
    // élimination sélective des positions possibles dans les lignes voisines
    $posi = chr(48+$j);
    for($n=0; $n<=8; $n++){
    $Lgn[$n][$m] = str_replace($posi,"",$Lgn[$n][$m]);
    }
    // élimination sélective des positions possibles dans les colonnes voisines
    $posi = chr(48+$i);
    for($n=0; $n<=8; $n++){
    $Col[$n][$m] = str_replace($posi,"",$Col[$n][$m]);
    }
    // élimination sélective des positions possibles, lignes-colonnes/région
    $n = floor($i/3)*3+floor($j/3); // région concernée numéro $n
    for($p=0; $p<=8; $p++){
    // position de la case en coordonnées 'grille', $ic,$jc
    $ic = floor($n/3)*3+floor($p/3);
    $jc = ($n-floor($n/3)*3)*3+($p-floor($p/3)*3);
    $posi = chr(48+$jc);
    $Lgn[$ic][$m] = str_replace($posi,"",$Lgn[$ic][$m]);
    $posi = chr(48+$ic);
    $Col[$jc][$m] = str_replace($posi,"",$Col[$jc][$m]);
    }
    // élimination de la position occupée quelque soit le chiffre
    for($mc=0; $mc<=8; $mc++){
    // régions (la région concernée, numéro $n)
    $n = floor($i/3)*3+floor($j/3);
    $p = ($i-floor($i/3)*3)*3+($j-floor($j/3)*3);
    $posi = chr(48+$p);
    $Reg[$n][$mc] = str_replace($posi,"",$Reg[$n][$mc]);
    // lignes
    $posi = chr(48+$j);
    $Lgn[$i][$mc] = str_replace($posi,"",$Lgn[$i][$mc]);
    // colonnes
    $posi = chr(48+$i);
    $Col[$j][$mc] = str_replace($posi,"",$Col[$j][$mc]);
    }
    }
    //
    function affectation($i,$j,$m,$D){
    global $Grille ,$Masque ,$loterie ,$collision;
    if ($Grille[$i][$j]== "0"){
    $Grille[$i][$j]= chr(48+$m+1);
    $posi = chr(97+$i).chr(48+$j);
    $loterie = str_replace($posi,"",$loterie);
    elimination($i,$j,$m);
    if ($D== "1") $Masque[$i][$j]= 1;
    }
    else{
    $collision++;
    }
    }
    /********* boucle *************/
    $tentative = 0;
    $tentative_max = 10;
    initialisation();
    while (strlen($loterie)>0 AND $tentative<$tentative_max){
    $tentative++;
    initialisation();
    $iter = 0;
    $itermax = 82;
    while ($loterie<>"" AND $iter<$itermax){
    $iter++;
    // placement déterministe d'un chiffre dans une case
    $bingo = 0;
    for ($n=0; $n<=8; $n++){
    for ($m=0; $m<=8; $m++){
    // en premier les régions
    if (strlen($Reg[$n][$m])== 1){
    $p = ord($Reg[$n][$m])-48;
    $i = floor($n/3)*3+floor($p/3);
    $j = ($n-floor($n/3)*3)*3+($p-floor($p/3)*3);
    affectation($i,$j,$m,"1");
    $bingo = 1;
    break;
    }
    // en second les lignes
    if (strlen($Lgn[$n][$m])== 1){
    $p = ord($Lgn[$n][$m])-48;
    $i = $n;
    $j = $p;
    affectation($i,$j,$m,"1");
    $bingo = 1;
    break;
    }
    // en troisième les colonnes
    if (strlen($Col[$n][$m])== 1){
    $p = ord($Col[$n][$m])-48;
    $i = $p;
    $j = $n;
    affectation($i,$j,$m,"1");
    $bingo = 1;
    break;
    }
    }
    if ($bingo== 1) break;
    }
    // placement par tirage au sort, si le placement déterministe n'a pas abouti
    if ($bingo== 0){
    // tirage d'une case $i,$j parmis les cases libres
    $ncase2 = strlen($loterie);
    $ncase = strlen($loterie)/2;
    $index = rand(0,$ncase-1)*2;
    $posi = substr($loterie,$index,2);
    // détermination des coordonnées de la case: $i,$j
    $i = ord(substr($posi,0))-97;
    $j = ord(substr($posi,1))-48;
    // tirage d'un chiffre parmis les chiffres libres
    $liste = "";
    for ($m=0; $m<=8; $m++){
    $libre = 1;
    // régions
    $n = floor($i/3)*3+floor($j/3);
    if ($Reg[$n][$m]== "") $libre = 0;
    // lignes
    $n = $i;
    if ($Lgn[$n][$m]== "") $libre = 0;
    // colonnes
    $n = $j;
    if ($Col[$n][$m]== "") $libre = 0;
    // concaténation
    if ($libre== 1) $liste = $liste.chr(48+$m);
    }
    if (strlen($liste)>0){
    $m = ord(substr($liste,floor(rand(0,strlen($liste)-1))))-48;
    affectation($i,$j,$m,"0");
    }
    }
    }
    }
    /************* fin de la boucle *******************************************/
    if (strlen($loterie)== 0){
    if ($tentative== 1){
    print("Une grille a été trouvée dès la première tentative .... <BR>\n");
    }
    else{
    print("Une grille a été trouvée après $tentative tentatives .... <BR>\n");
    }
    }
    else{
    print("Désolé, la recherche d'une grille a échouée après les $tentative_max tentatives.<BR>\n");
    print("Il reste des cases non résolues <I>(case \"0\" sur fond jaune)</I>.<BR>\n");
    print("(<I style=color:green> rechargez ou actualisez la page (F5) pour un autre essais </I>)<BR>\n");
    }
    ?>

    <BR>
    <h4 align="left" style=color:blue>Affichage de la grille</H4>

    <?
    // Affichage de la grille
    $nalea = 0;
    print("<TABLE border=1>\n");
    for ($ri=0; $ri<=2; $ri++){
    print("<TR>\n");
    for ($rj=0; $rj<=2; $rj++){
    print("<TD>\n");
    print("<TABLE border=1>\n");
    for ($ii=0; $ii<=2; $ii++){
    print("<TR>\n");
    for ($jj=0; $jj<=2; $jj++){
    // calcul de ($i,$j)
    $i = $ri*3+$ii;
    $j = $rj*3+$jj;
    If ($Grille[$i][$j]== "0"){
    print("<TD style=font-size:15px bgcolor=yellow><B>".$Grille[$i][$j]."</B></TD>\n");
    }
    else{
    If ($Masque[$i][$j]== 1){
    print("<TD style=font-size:15px><B style=color:ddd>".$Grille[$i][$j]."</B></TD>\n");
    }
    else{
    $nalea++;
    print("<TD style=font-size:15px><B>".$Grille[$i][$j]."</B></TD>\n");
    }
    }
    }
    print("</TR>\n");
    }
    print("</TABLE>\n");
    print("</TD>\n");
    }
    print("</TR>\n");
    }
    print("</TABLE>\n");
    print("nombre de cases mimimun obtenues $nalea <BR>\n");
    ?>

    <BR>Les chiffres en grisé peuvent être retirés,<BR>
    totalement ou en partie suivant le niveau de difficulté recherchée.<BR>
    (<I style=color:purple>niveau 1 = 42 cases, niveau 2 = 36 cases, ...</I>)<BR>
    <HR>
    Tedheu, Générateur de grilles de Su-Doku en PHP, version 1, 24-04-2006
    <HR style="color: red" width="500" align="left">

    </BODY>
    </HTML>

    sudoku

    en fait,

    voila le code

    test.php

    affiche les grilles


    PHP:
    <html>
    <head>
    <title>Untitled Document</title>
    </head>

    <body>

    <? if(!$niveau = @$_COOKIE["niveau"]) $niveau = 5;
    if($tmp = @$_GET["niveau"]) {
    $niveau = max(2,min(8,$niveau+$tmp));
    setcookie("niveau",$niveau);
    }
    ?>
    <html><body>
    <div align=center>

    <? // Chargement
    $tmp = _AT_file("sudoku.txt");
    if($tmp) {
    $nb = sizeof($tmp);
    $n = @$_GET["n"]; if(!@$tmp[$n]) $n=$nb-1;

    // Choix de la grille
    $ligne = trim($tmp[$n]);
    $sudoku=unserialize($ligne); $sudoku2=$sudoku;

    // Application du masque
    if(!@$_GET["soluce"]) {
    $liste = range(0,8);
    for($i=0;$i<9;$i++) { // pour chaque grille 3x3
    $niv = rand($niveau-1,$niveau+1);
    shuffle($liste);
    for($j=0;$j<$niv;$j++)
    $sudoku[$i][$liste[$j]] = "";
    }
    }

    // Affichage ?>
    <style>
    td.s { font:normal 18pt verdana }
    A { text-decoration:none }
    A.hover { text-decoration:underline }
    .f7 { font:normal 7pt Verdana }
    </style>

    <script language="JavaScript">
    sauve=""; sauve3 = new Array();

    function drawcase() {
    tmp = sauve.id.split("-");
    mem = sauve3[tmp[0]*9+tmp[1]]+""; if(mem=="undefined") mem="";
    if(mem=="") tmp2 = " ";
    else {
    if(mem.length==1) tmp2 = "<font color=red>"+mem+"</font>";
    else {
    tmp2 = "<table cellspacing=0 cellpadding=0 border=0>";
    for(i=0;i<2;i++) {
    tmp2+="<tr>";
    for(j=0;j<4;j++) {
    t = i*4+j;
    tmp2+="<td class=f7>"+String.fromCharCode(mem.charCodeAt(t))+"</td>";
    }
    tmp2+="</tr>";
    }
    tmp2 += "</table>";
    }
    }
    sauve.innerHTML = tmp2;
    }

    function drawgrid() {
    tmp = sauve.id.split("-");
    mem = sauve3[tmp[0]*9+tmp[1]]+""; if(mem=="undefined") mem="";
    for(i=1;i<10;i++) {
    ch = String.fromCharCode(i+4;
    if(mem.indexOf(ch)>=0) document.getElementById("j"+i).style.background="yellow";
    else document.getElementById("j"+i).style.background="";
    }
    }

    function soluce() {
    tmp = sauve.id.split("-");
    sauve3[tmp[0]*9+tmp[1]]=sauve.s;
    drawcase(); drawgrid();
    }

    function joue(lacase) {
    if(sauve!="") sauve.style.background="";
    sauve=lacase;
    lacase.style.background="yellow";
    lejeu = document.getElementById("jeu");
    tmp = sauve.id.split("-");
    mem = sauve3[tmp[0]*9+tmp[1]]+""; if(mem=="undefined") mem="";
    drawgrid();
    lejeu.style.visibility="visible";
    }

    function store(n) {
    tmp = sauve.id.split("-");
    ch = String.fromCharCode(n+4;
    mem = sauve3[tmp[0]*9+tmp[1]]+""; if(mem=="undefined") mem="";
    t = mem.indexOf(ch)
    if(t>=0) { t2 = mem.split(""); t2[t]=""; mem = t2.join(""); }
    else mem+=ch;
    sauve3[tmp[0]*9+tmp[1]]=mem;
    drawcase(); drawgrid();
    }
    </script>

    <h1>Sudoku</h1>
    <table><tr><td width=50 nowrap>
    <div id="jeu" style="visibility:hidden">
    <table style="cursor:help" width=45><tr>
    <th id=j1 onclick=store(1)>1</th>
    <th id=j2 onclick=store(2)>2</th>
    <th id=j3 onclick=store(3)>3</th>
    </tr><tr>
    <th id=j4 onclick=store(4)>4</th>
    <th id=j5 onclick=store(5)>5</th>
    <th id=j6 onclick=store(6)>6</th>
    </tr><tr>
    <th id=j7 onclick=store(7)>7</th>
    <th id=j8 onclick=store(>8</th>
    <th id=j9 onclick=store(9)>9</th>
    </tr><tr>
    <th colspan=3 ><A href="java script:;" onClick="soluce()">Soluce</A></th>
    </tr></table>
     
    </div>
    </td><td align=center>
    <table border=0>
    <? for($i=0;$i<3;$i++) { ?>
    <tr>
    <? for($j=0;$j<3;$j++) { ?>
    <td><table align=center border=1 cellspacing=0 width=100%>
    <? for($k=0;$k<3;$k++) { ?>
    <tr>
    <? for($l=0;$l<3;$l++) { ?>
    <td class=s align=center width=30 nowrap <?
    $id = ($i*3+$j)."-".($k*3+$l);
    echo "id='".$id."' ";
    $tmp=@$sudoku[$i*3+$j][$k*3+$l];
    if(!$tmp) {
    echo "style='cursor:help' ";
    echo "title='Cliquer pour jouer' ";
    echo "onclick=joue(this) ";
    echo "s='".@$sudoku2[$i*3+$j][$k*3+$l]."'";
    }
    ?>><b><?
    echo ($tmp)?$tmp:" ";
    ?></b></td>
    <? } ?>
    </tr>
    <? } ?>
    </table></td>
    <? } ?>
    </tr>
    <? } ?>
    </table>
    <table width=300><tr>
    <td>
    <A href="?n=<?=$n?>&niveau=-1">-</A>
    <A href="?n=<?=$n?>">Niveau <?=$niveau?></A>
    <A href="?n=<?=$n?>&niveau=1">+</A>
    </td><td align=right>
    <?if($n>1) { ?><A href="?n=0">|<</A> <? } ?>
    <?if($n) { ?><A href="?n=<?=$n-1?>"><</A> <? } ?>
    <i>Grille n° <?=($n+1)?></i>
    <?if($n<$nb-1) { ?> <A href="?n=<?=$n+1?>">></A> <? } ?>
    <?if($n<$nb-2) { ?><A href="?n=<?=$nb-1?>">>|</A> <? } ?>
    </td>
    </tr></table>
    <button onClick="window.print();">Imprimer</button>  
    <button onClick="location.replace('?n=<?=$n?>&soluce=1')">Solution</button>
    </td></tr></table>

    <? } else {
    $search = 1;?>
    Création d'une grille en cours...
    <? } ?>

    <br />
    <iframe src="sudoku.php?search=<?=@$search?>" frameborder=no />
    </div>
    </body></html>

    </body>
    </html>

    sudoku.php

    génère les grilles


    <html>
    <head>
    <title>Untitled Document</title>
    </head>

    <body>

    <?
    $TempsMax = 5; // 5 secondes semblent suffire
    $Temps = time();

    // Propose un carré pour compléter la ligne
    function complete_h($c1,$c2) {
    $t = range(1,9);
    $r1 = array($c1[0],$c1[1],$c1[2],$c2[0],$c2[1],$c2[2]);
    $r2 = array($c1[3],$c1[4],$c1[5],$c2[3],$c2[4],$c2[5]);
    $r3 = array($c1[6],$c1[7],$c1[8],$c2[6],$c2[7],$c2[8]);
    $v1 = array_diff($t,$r1); shuffle($v1);
    $v2 = array_diff($t,$r2); shuffle($v2);
    $v3 = array_diff($t,$r3); shuffle($v3);
    return array_merge($v1,$v2,$v3);
    }

    // Propose un carré pour compléter la colonne
    function complete_v($c1,$c2) {
    $t = range(1,9);
    $r1 = array($c1[0],$c1[3],$c1[6],$c2[0],$c2[3],$c2[6]);
    $r2 = array($c1[1],$c1[4],$c1[7],$c2[1],$c2[4],$c2[7]);
    $r3 = array($c1[2],$c1[5],$c1[8],$c2[2],$c2[5],$c2[8]);
    $v1 = array_diff($t,$r1); shuffle($v1);
    $v2 = array_diff($t,$r2); shuffle($v2);
    $v3 = array_diff($t,$r3); shuffle($v3);
    return array($v1[0],$v2[0],$v3[0],$v1[1],$v2[1],$v3[1],$v1[2],$v2[2],$v3[2]);
    }

    // Détermine le n° du carré et le rang de la case d'après les coordonnées
    function ij2nr($i,$j) { // coords i-j => coords carré
    $n = 3*floor($i/3)+floor($j/3);
    $r = 3*($i%3)+$j%3;
    return array($n,$r);
    }

    // Teste si la ligne ou la colonne est conforme
    function test(&$c,$colflag) {
    $s = sizeof($c); // nombre de carrés
    // limite le nombre de lignes/colonnes à tester
    if($colflag) { // Test sur les colonnes
    $nc=3; if($s==2) $nc=6; elseif($s>2) $nc = 9;
    } else // Test sur les lignes
    $nc = (floor(($s-1)/3)+1)*3;
    // On teste
    for($i=0;$i<$nc;$i++) {
    for($j=0;$j<9;$j++) {
    $t = ($colflag) ? ij2nr($j,$i) : ij2nr($i,$j);
    if($t[0]>=$s) continue;
    $row[$i][] = $c[$t[0]][$t[1]];
    }
    if(array_unique($row[$i])!=$row[$i]) return false;
    }
    return true;
    }

    // Tente de générer une grille dans le temps imparti
    function genere() { global $Temps,$TempsMax;
    // Liste des 9 valeurs possibles
    $liste = range(1,9);
    // carré haut-gauche
    shuffle($liste); // Mélange la liste
    $carre[0] = $liste; $result = $carre; $nbcarre = 1;
    // Pour les autres carrés
    while($nbcarre<9) {
    // Soit c'est une fin de ligne => on complète
    if(($nbcarre==2)||($nbcarre==5)||($nbcarre==8))
    $l = complete_h($carre[$nbcarre-2],$carre[$nbcarre-1]);
    // Soit c'est une fin de colonne => on complète
    elseif(($nbcarre==6)||($nbcarre==7))
    $l = complete_v($carre[$nbcarre-6],$carre[$nbcarre-3]);
    // Sinon => tirage random
    else {
    shuffle($liste); $l = $liste;
    }
    // On teste
    $carre[$nbcarre] = $l;
    if($test = (test($carre,0)&&test($carre,1)) ) {
    // OK, mémorise et passe au carré suivant
    $result[$nbcarre] = $l; $nbcarre++;
    // echo (time()-$Temps)." - ";
    }
    // Le temps de recherche est dépassé ?
    if(time()-$Temps>$TempsMax) break;
    }
    return $result;
    }

    if($search=@$_GET["search"]) {
    echo "Recherche".str_repeat(".",@$_GET["n"]+1);
    if(@$_GET["n"]) $sudoku = genere();
    }

    $tmp = _AT_file("sudoku.txt"); $s=0; if($tmp) $s = sizeof($tmp);

    // On a trouvé une nouvelle grille => on la sauve
    if($search&&@$sudoku[8]) {
    $search = 0; // Fin de la recherche
    $t = serialize($sudoku)."\n";
    if($tmp) {
    if(!in_array($t,$tmp)) {
    $f=fopen("sudoku.txt","a");
    fputs($f,$t);
    fclose($f);
    $s++;
    } else $search=1; // déjà trouvée...
    } else {
    $f=fopen("sudoku.txt","w");
    fputs($f,$t);
    fclose($f);
    $s++;
    }
    if(!$search) { ?>
    <script language="JavaScript">
    t=top.location.href.split("?");
    top.location.replace(t[0]+"?n=last");
    </script>
    <? }
    }

    ?>

    <center>
    <?if($search) { ?>
    <script>document.location.replace("sudoku.php?n=<?=@$_GET["n"]+1?>&search=1");</script>
    <? } else { ?>
    <b><?=$s?> grille<?=($s>1)?"s":""?> disponible<?=($s>1)?"s":""?></b><br />
    <A href="?search=1">Créer une nouvelle grille</A>
    <? } ?>
    </center>

    </body>
    </html>

    et en fait je voudrais trouver en modifiant un des deux scripts un moyen pour avoir les chiffres du sudoku tous à la suite par ligne dans une variable ( array )

    et pour plusieurs niveaux les chiffres qui sont masqués de la grille de sudoku dans une variable par ligne ( 1 pour affiché et 0 pôur masquer )

    c'est sa que je voudrais

    après pour exploiter tout sa je peut faire moi même mais je voudrais trouver ces chiffres mais je ne sais pas où ! j'ai testé des trucs mais c'est trop compliqué pour moi ce script et je n'ai pas réussi à avoir les chiifres

    ensuite, je peut me débrouiller pour afficher sa dans des grilles à partir de base mysql ...

    si vous m'avez pas compris ...

    sudoku.gif

    voici une grille de sudoku

    je voudrais modifier le script pour avoir une variable par exemple $nombres

    avec ( imaginons qu'il y ai tous les chiffres )

    $nombres = X7X6X148XXX9XXXXX63 ...

    on voit que c'est les chiffres du sudoku tous à la suite par ligne

    sa il faut modifier sudoku.php ( la seconde boite de code )

    $niveau1 chiffres masqués du niveau 1

    ( modifier la première boite de code  test.php )

    pareil pour la suite des nombres mais avec ceci :  1 pour affiché et 0 pour masquer

    le script de test.php a 7 niveaux, a chaque niveau supplémentaire il y a de plus en plus de chiffres masqués( c'est logique )

    avec par exemple pour la grille affichée,

    $niveau1 = 01010111000010000011  ...

    mais avec plusieurs niveaux

    voila

    je précise au cas ou que il y en a qui ne s'en seraient pas douté, que le script viens d'ici :

    http://www.asp-php.net/scripts/asp-php/sudoku.php

    il faut juste que j'arrive à trouver dans le script prééxistant l'endroit ou avoir ces nombres, le modifier un peu pour n'avoir que l'essentiel et que je rajoute une requete sql pour enregistrer ca dans une base et pas un fichier

    pour un expert sa devrait pas etre très dur mais moi je suis perdu dans ce script

    voila, merci d'avance !

    yann

    sudoku

    je voudrais juste sortir les chiffres en fait

    mais je ne vois pas ou les prendre

    qqn pourrait m'aider svp

    merci

    sudoku

    peut on le modifier pour avoir par exemple

    (

    A : ligne 1

    B : ligne 2 ...

    1 : colonne 1

    2 colonne 2 ...

    et A1 : ligne 1 colonne 1

    C9 ...

    )

    $a1 = ...

    $a2 = ...

    $a3 = ...

    mais vu qu'il y a des cases qui sont vides ( avec le niveau de difficulté )

    $ta1 = (1 pour pleine et 0 pour vide)

    ...

    après, je peut me débrouiller tout seul, j'aime bien le mysql

    sudoku

    Bonjour

    vu que je ne comprend pas trop les scripts sudoku que j'ai précédement vu,

    je cherche un script qui génère des grilles sudoku mais ce que j'aimerais trouver c'est un script qui enregistre les nombres et leur position dans une table mysql

    est ce que quelqun pourrais m'aider svp

    merci d'avance

    yuuzhantar

×
×
  • Créer...