• [^] # Re: Plutôt beauté du design

    Posté par . En réponse au journal "beauté du code". Évalué à 3.

    _Bool
    is_power_of_2_naive(unsigned long n)
    {
     if (n == 0) return false;
     for (; n%2 == 0; n /= 2) 
     ;
     return n == 1;
    }

    en quoi c'est plus compact que :

    _Bool
    is_power_of_2_naive(unsigned long n)
    {
     if (n == 0) return false;
     while (n%2 == 0) n /= 2;
     return n == 1;
    }

    Ce qui a le bon goût de ne pas tordre une construction du langage par lubie.

    Ta dernière solution n'est pas astucieuse elle utilise l'une des propriétés mathématiques. Ce n'est pas la première solution à la quelle pense un développeur, mais ça n'a rien de bien compliqué.

    Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)