IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Nombre de combinaisons


Sujet :

Langage PHP

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2009
    Messages : 9
    Points : 7
    Points
    7
    Par défaut Nombre de combinaisons
    Nous avons reçu une question pour notre cours de math. Il faut trouver le nombre de possibilité différente générée par la fonction suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
     
    <?php
    function generate_passwd($nb=8)
    {
     
        $lettre = array();
     
        $lettre[0] = array( 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i',
        'j', 'k', 'l', 'm', 'o', 'n', 'p', 'q', 'r',
        's', 't', 'u', 'v', 'w', 'x', 'y', 'z', 'A',
        'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J',
        'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'D',
        'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', '9',
        '0', '6', '5', '1', '3');
     
        $lettre[1] =  array('a', 'e', 'i', 'o', 'u', 'y', 'A', 'E',
        'I', 'O', 'U', 'Y' , '1', '3', '0' );
     
        $lettre[-1] = array('b', 'c', 'd', 'f', 'g', 'h', 'j', 'k',
        'l', 'm', 'n', 'p', 'q', 'r', 's', 't',
        'v', 'w', 'x', 'z', 'B', 'C', 'D', 'F',
        'G', 'H', 'J', 'K', 'L', 'M', 'N', 'P',
        'Q', 'R', 'S', 'T', 'V', 'W', 'X', 'Z',
        '5', '6', '9');
     
        $retour   = '';
        $prec     = 1;
        $precprec = -1;
     
        srand((double)microtime() * 20001107);
     
        while(strlen($retour) < $nb)
        {
            // To generate the password string we follow these rules : (1) If two
            // letters are consonnance (vowel), the following one have to be a vowel
            // (consonnace) - (2) If letters are from different type, we choose a
            // letter from the alphabet.
     
            $type     = ($precprec + $prec) / 2;
            $r        = $lettre[$type][array_rand($lettre[$type], 1)];
            $retour  .= $r;
            $precprec = $prec;
            $prec     = in_array($r, $lettre[-1]) - in_array($r, $lettre[1]);
     
        }
        return $retour;
    }
    echo generate_passwd();
    ?>
    C'est un problème de math, mais je ne comprend pas très bien le code vers la fin. Si quelqu'un à une idée. Il faut utiliser les factorielles en rapport au nombre de char.

    Voilà. Bien à vous.

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Qu'est ce que tu ne comprends pas ?
    Le principe est ecrit dans le code.

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2009
    Messages : 9
    Points : 7
    Points
    7
    Par défaut
    Et bien la question c'est calculer le nombre de possibilité mais je sais pas trop comment on fait ça. C'est le nombre de combinaison possible.
    Il y a 106 possibilités , 8 char ça fait 106^8 possibilité, mais je suis pas sûr.

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Ba c'est un probleme pur de mathematiques, ca n'a rien a voir avec le php.

Discussions similaires

  1. recherche de meilleure solution, nombre de combinaison gigantesque
    Par Zwiter dans le forum Algorithmes et structures de données
    Réponses: 16
    Dernier message: 13/05/2009, 11h42
  2. nombre de combinaisons possible
    Par devaben dans le forum C++
    Réponses: 3
    Dernier message: 11/05/2009, 13h53
  3. Algo qui donne le nombre de combinaison pos
    Par mail.spam dans le forum Algorithmes et structures de données
    Réponses: 9
    Dernier message: 21/03/2009, 00h13
  4. Algorithme qui affiche le nombre de combinaison possible
    Par hsoussou dans le forum Débuter avec Java
    Réponses: 1
    Dernier message: 07/01/2009, 15h32
  5. calcul du nombre de combinaison possible
    Par Gunner4902 dans le forum Langage
    Réponses: 10
    Dernier message: 07/07/2008, 17h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo