Partage
  • Partager sur Facebook
  • Partager sur Twitter

Un nombre est pair ou impair ?

Comment savoir ???

Sujet résolu
    30 août 2006 à 10:16:20

    Salut, voilà tout est dans le titre, j'aimerais savoir si il existait une fonction, ou une solution de savoir si un nombre est pair ou impair, cette fonction me servirait pour un tchat, pour que le 1er message soit blanc, le 2eme rouge, le 3eme blanc le 4eme rouge ect...

    J'ai essayé avec plusieur méthode sans succées :( !

    Merci de votre aide, ++
    • Partager sur Facebook
    • Partager sur Twitter
      30 août 2006 à 10:18:45

      if(is_int($nb / 2))
      Tout nombre pair dans donne un nombre entier quand divisé par 2.

      Edit : Oups faute de frappe :p

      Edit 2 : La solution de flobard est meilleure ;)
      • Partager sur Facebook
      • Partager sur Twitter
        30 août 2006 à 10:19:36

        heuuu

        Pitêtre un :

        $nombre = 21; // par exemple
        $nombre_2 = $nombre / 2;

        if(ereg(".5",$nombre_2))
        {
        echo "impair";
        }
        else
        {
        echo "pair";
        }

        ça devrait marcher, mais c'est pas le meilleur code du monde ;)

        @+
        {
        • Partager sur Facebook
        • Partager sur Twitter
        Anonyme
          30 août 2006 à 10:21:24

          Tu as pour ça le célèbre modulo, symbolisé %, qui donne le reste d'une division... Ainsi 5 % 2 = 1 car 5 / 2 = 2 R1...

          Ainsi , $nombre % 2 donnera 0 pour un nombre pair et 1 pour un nombre impair !

          donc la solution c'est dans une boucle, une variable $i (parexemple) que tu incrémentes à la fin de la boucle et un testes à chaque fois :)


          Je pense que je suis grilled mais bon ^^




          Même si je suis grilled, je donne une des melileures solutions (la meilleure ?)... Le modulo étant une des opérations basiques de base :p
          • Partager sur Facebook
          • Partager sur Twitter
            30 août 2006 à 10:23:28

            Ok dentruk, merci mais je vais prendre le script de koller, si il pouvais m'expliquer ce que fias son code :) !

            Merci ++ !

            edit: merci pour la derniere réponse, trés claire et simple d'esprit, mais comment un fait pour dire que if le reste =, en gros le reste coreespond à quoi ???
            • Partager sur Facebook
            • Partager sur Twitter
              30 août 2006 à 10:24:56

              Le meilleur script est celui de flobard.
              Koller utilise les regex pour savoir si un nombre possède un .5 à la fin...

              Edit : Euh c'est normal que mon message apparaisse apres celui de Koller alors que mon heure est inférieure ? o_O

              Edit 2 : Solution de flobard :
              if(($nb % 2) == 0) echo 'pair';
              else echo 'impair';
              • Partager sur Facebook
              • Partager sur Twitter
                30 août 2006 à 10:26:23



                $nombre = 21; // par exemple
                $nombre_2 = $nombre / 2; // là il divise le nombre par 2, donc, s'il est impair il se terminera par .5 (d'office !)

                if(ereg(".5",$nombre_2)) // ici je vérifie la présence du .5 (qui signifie que mon nombre est impair)
                {
                echo "impair";
                }
                else // s'il est pas impair, c'est qu'il est pair
                {
                echo "pair";
                }


                Voilou, pour les explications du code ... mais c'est pas le meilleur code...celui de flobard est bien mieux :)

                @+

                Koller14
                • Partager sur Facebook
                • Partager sur Twitter
                  30 août 2006 à 10:28:24

                  Ok, merci pour ton exlicatioon, enfaite le ereg signifie à la fin, et aprés je mets la variable pour dire ou, je crois que j'ai tout, comprus encore une fois merci, ++ Eriatan !
                  • Partager sur Facebook
                  • Partager sur Twitter
                    30 août 2006 à 10:28:57

                    non pas à la fin,
                    si c'est '.5' est présent dans ma chaine de nombre
                    • Partager sur Facebook
                    • Partager sur Twitter
                    Anonyme
                      30 août 2006 à 10:32:14

                      $couleur_pair = 'red';
                      $couleur_impair = 'white';
                      if ($nombre % 2 == 0)
                        $couleur = $couleur_pair;
                      else
                        $couleur = $couleur_impair;


                      Voili voilou, un truc simple d'utilisation :)
                      • Partager sur Facebook
                      • Partager sur Twitter
                        30 août 2006 à 10:33:00

                        Ahhhhhhhhh ok, merci, je crois que je m'en servirais souvent ;) , merci encore.

                        ++ Je vais pouvoir fermer lorsque l'on aura répondu à ma derniere question, si j'ai bien compris je crois que le résultats est égale à :

                        facteur1%facteur2 = résultats, il ne donne pas le dividande !
                        • Partager sur Facebook
                        • Partager sur Twitter
                        Anonyme
                          30 août 2006 à 10:38:31

                          Tu peux tester aussi mais oui, le modulo ne donne que le reste, pas le dividande (si j'ai compris ce que tu appelles dividande)...
                          • Partager sur Facebook
                          • Partager sur Twitter
                            30 août 2006 à 15:03:30

                            Oui tu ascompris, c'est bon mon script ai fait merci ++ !
                            • Partager sur Facebook
                            • Partager sur Twitter

                            Un nombre est pair ou impair ?

                            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                            • Editeur
                            • Markdown