begin process at 2012 05 28 23:55:30
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive PHP

 > 

Archives

 > 

AU SECOURS !!!

 > 

code a la con !


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

code a la con !

lundi 9 janvier 2006 à 22:02:05 | code a la con !

joebuz

Membre Club
bonjour,
Voila on m'a demandé un code pour une application a la noix qu'a l'air toute simple, j'ai dis pas de probleme, et pourtant j'y arrive pas !
Voici de quoi il s'agit,
il faut un code pour trouver toute les combinaisons possibles d'un mot en inversant les lettres, sans repeter deux fois la meme lettre, le tout afficher sous forme de liste, et fonctionnant avec le mot qu'on veut sans passer par une BDD !

j'ai essayé pour l'instant avec un mot $mot = table; //pour ex.
puis je fais ceci :

  $nomlettre[1]="T";
  $nomlettre[2]="A";
  $nomlettre[3]="B";
  $nomlettre[4]="L";
  $nomlettre[5]="E";
srand((double)microtime()*1000000);
  $affichmot1=rand(1,$nblettres);
  $affichmot2=rand(1,$nblettres);
  $affichmot3=rand(1,$nblettres);
  $affichmot4=rand(1,$nblettres);
  $affichmot5=rand(1,$nblettres); 

echo "mot : ".$nomlettre[$affichmot1]." ".$nomlettre[$affichmot2]." ".$nomlettre[$affichmot3]." ".$nomlettre[$affichmot4]." ".$nomlettre[$affichmot5]." " <br />";

Le probleme c'est que je peux avoir deux fois la meme lettre et que ca fonctionne seulement pour le mot 'table' et que ca ne me donne pas toute les combinaisons !!

Voila si qqn a une idée

joebuz

lundi 9 janvier 2006 à 23:10:02 | Re : code a la con !

joebuz

Membre Club
bon deja j'ai reussi à recuperer les lettres pour n'importe quel mot, voila comment je m'y prend :

- petit formulaire type text pour rentrer le mot que l'on souhaite

$mot = $_POST['mot'];      // on recupere le mot di formulaire
$nb = strlen ("$mot");         // on compte de combien lettres est le mot
$sep = wordwrap($mot, 1, ",",1);      //on separe les lettres par une virgule
$lettre = explode(",", $sep);               //on recupere les lettres une a une
$nb2 = $nb;                        // on donne a la variable nb2 la valeur de nb

while (($nb2 <= $nb)&&($nb2 > 0)) {      // a chaque fois que nb2 est < nb
    $nb2 = --$nb2;                                    // on desincremente nb2
    echo $lettre[$nb2]."<br />";                  // on affiche les lettres une a une
}

Voila ca c'est fait, maintenant reste plus qu'a retourner le mot dans tout les sens en contrôlant qu'on est qu'une seule fois la meme lettre, et afficher la liste

joebuz

mardi 10 janvier 2006 à 01:15:16 | Re : code a la con !

FhX

Tu as la fonction shuffle() ou alors array_rand() pour un mélange :)
mardi 10 janvier 2006 à 09:47:44 | Re : code a la con !

malalam

Administrateur CodeS-SourceS
Ca risque d'être long, en mode aléatoire ;-)

C'est mathématique ton truc, si j'ai bien compris ce que tu dois faire. Le principe est de boucler sur chaque lettre, et de les déplacer.
Par ex :
ABC peut donner :

ABC,
ACB
BCA
BAC
CBA
CAB
Par contre je pige pas le "une seule fois 1 lettre". Tu fais comment pour un mot comme 'para' ? Il y a deux 'a'.
mardi 10 janvier 2006 à 21:24:41 | Re : code a la con !

joebuz

Membre Club

en reponse a malalam

je disais ca c'est pour eviter d'avoir avec un rand() des mots comme :

pppp
prpr
raar

pour le mot para

mais sinon c'est ca le principe

joebuz

mercredi 11 janvier 2006 à 01:10:56 | Re : code a la con !

joebuz

Membre Club
en fait je cois que ca va être tendu d'afficher tout les resultats vu les posibilités

NB LETTRE      POSSIBILITES
      2                           2
      3                           6
      4                           24
      5                        120
      6                        720
      7                        5040
      8                        40320 !!
      ...                        ....

j'arrive a generer un mot avec les lettres dans n'importe quel ordre mais pas a en afficher la liste por ceux que ça interesse :

 $mot = $_POST['mot'];                        //on recupere le mot du formulaire
$nb = strlen ("$mot");                             //on compte le nb de lettres du mot
$sep = wordwrap($mot, 1, ",",1);           //on ajoute une virgule entre chaque lettre
$lettre = explode(",", $sep);                    //on recupere les lettres entre les virgules

$numbers = range(0,$nb);                      //on génére un chiffre aleatoire    
srand((float)microtime()*1000000);
shuffle($numbers);
 foreach ($numbers as $number) {         //en fonction du chiffre on cherche la lettre
  $ltr = $lettre[$number];
     echo "$ltr";                                       //on affiche le mot
 }


Je sais pas si mon compte est exact, je ne connais pas trop les fonctions srand et shuffle, mais il fonctionne, si vous trouvez un moyen de faire plus simple ou d'afficher la liste, je veux bien, merci

joebuz



Cette discussion est classée dans : code, mot, rand, nomlettre, nblettres


Répondre à ce message

Sujets en rapport avec ce message

Rand() avec valeur regex [ par mathieumg ] Bonjour j'essaie de faire un tag [de]chiffre[/de] pour mon forum qui fera un chiffre au hasard entre 1 et le chiffre entre les tags, seulement le rand Mettre le contenu de <title> dans une variable [ par ElGaunt ] Salut à tous,J'aimerais mettre le contenu de la balise du code html dans une variable que je pourrai utiliser dans mon code php.C'est possible ? Ci o Moteur de Recherche [ par MAsterC ] Salut à tous,je suis en train de développé un moteur de recherche, puis il me manque seulement la "recherche par mot clé" c'est à dire que... si je ma mot de passe [ par stequer ] voila je rechecher un srcipt pour securiser ma parti menbre de mon site j ai deja une base de donner pseudo et code pour la gestion des utilisateur et Anti-flood [ par administrateurlinux ] Bonjour,J'aimerais mètre un anti-flood sur un formulaire, voici le code            <form name="demande" method="POST" actio Pb de conception [ par blinix123 ] Bonjour à tous, alors voila, je vous explique avant de vous balancer tout le code :pJ'ai un code mini-chat, et un code page protegé par mot de passe, Page Protégée par mot de pass [ par MindFreak ] Salut je vous propose un code php pour securiser une page web a fond  codé par moi même Ce code est simple, je ne discuterai pas longtemps dessus. Je php prob avec code et mot de passe [ par midnnight ] Bonjour à tous,Je rencontre un prob au niveau d'un code php visant à sécuriser une de mes pages à l'aide d'un 'pass'Mon navigateur ne cesse de me donn mot de passe invisible dans le code source [ par bibiss1961 ] Bonjour, J'ai fait 2 pages 1 pour écrire le mot de passe 1 pour afficher la page protégée voici les codes 1RE PAGE <!DOCTYPE html PUBLIC "-//W3 comment afficher un captcha à la fin d'un formulaire ? [ par tiger159 ] Bonjour,j'aimerais savoir comment intégrer un captchaà la suite de l'affichage d'un formulaire.(Il semble que ce soit dû à 'header' qui a déjàenvoyé s


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,170 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales