"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Programme PHP pour compter les bits définis dans un nombre entier

Programme PHP pour compter les bits définis dans un nombre entier

Publié le 2024-08-29
Parcourir:263

Qu'est-ce que le code binaire ?

Le code binaire est un système de représentation d'informations ou de données à l'aide d'un système numérique en base 2. Il utilise seulement deux chiffres, généralement 0 et 1, pour représenter toutes les valeurs. Chaque chiffre d'un code binaire est appelé un bit (abréviation de chiffre binaire).

En code binaire, chaque chiffre représente une puissance de 2. En partant du chiffre le plus à droite, les puissances de 2 augmentent de droite à gauche. Par exemple, dans un code binaire de 8 bits, le bit le plus à droite représente 2^0 (1), le bit suivant représente 2^1 (2), le suivant représente 2^2 (4), et ainsi de suite.

Exemple

Prenons le nombre décimal 42 et représentons-le en code binaire. Pour convertir 42 en binaire, on le divise successivement par 2 et on garde une trace des restes jusqu'à ce que le quotient devienne nul.

Voici le processus étape par étape :

Étape 1

42 ÷ 2 = 21, reste 0

Étape 2

21 ÷ 2 = 10, reste 1

Étape 3

10 ÷ 2 = 5, reste 0

Étape 4

5 ÷ 2 = 2, reste 1

Étape 5

2 ÷ 2 = 1, reste 0

Étape 6

1 ÷ 2 = 0, reste 1

Pour obtenir la représentation binaire, on part du bas (dernier reste) et on lit les restes de bas en haut.

Le code binaire résultant pour 42 est : 101010

Ainsi, le nombre décimal 42 est représenté par 101010 en code binaire.

Qu'est-ce que Setbit ?

Dans le contexte du code binaire, un bit défini fait référence à un chiffre binaire (bit) défini sur la valeur 1. D'autre part, un bit clair fait référence à un chiffre binaire défini sur la valeur de 0.

Exemple

Par exemple, dans le code binaire 101010, il y a trois bits définis (correspondant aux positions valant 1) et trois bits clairs (correspondant aux positions valant 0).

Programme PHP pour compter les bits définis dans un nombre entier

PHP Program to Count set Bits in an Integer

Méthode 1 : parcourir tous les bits d'un nombre entier

Exemple

>= 1;
	}
	return $count;
}

// Driver Code
$number= 12;
echo "Number of setbits in $number: " .countSetBits($number);
?>

Sortir

Number of setbits in 12: 2

Méthode 2 : Approche récursive

> 1);
}

// Driver code

// get value from user
$n = 123;

// function calling
echo "Number of setbits in $n are: ".countSetBits($n);
?>

Sortir

Number of setbits in 123 are: 6

Conclusion

En conclusion, nous pouvons compter les bits définis (1) dans un entier en utilisant à la fois une approche récursive et une boucle sur tous les bits en PHP. L’approche en boucle consiste à parcourir chaque bit de l’entier à l’aide d’une boucle while. Nous initialisons une variable de compteur et itérons jusqu'à ce que le nombre devienne 0. À l'intérieur de la boucle, nous utilisons AND au niveau du bit avec 1 pour vérifier le bit le moins significatif. S'il est égal à 1, on incrémente le compteur. Ensuite, nous décalons le nombre vers la droite de 1 bit. Ce processus se poursuit jusqu'à ce que tous les bits aient été vérifiés et que le décompte final soit renvoyé.

Pour l'approche récursive, nous pouvons définir une fonction récursive qui prend un entier en entrée. À l'intérieur de la fonction, nous vérifions le bit le moins significatif en utilisant l'opérateur ET au niveau du bit avec 1. S'il est égal à 1, nous incrémentons un compteur. Ensuite, nous décalons le numéro de 1 bit vers la droite et appelons récursivement la fonction avec le numéro mis à jour. Le cas de base est celui où le nombre devient 0, auquel cas nous renvoyons le compteur. Cette approche compte récursivement les bits définis jusqu'à ce que le nombre devienne 0. Les deux approches fournissent un moyen de compter les bits définis dans un nombre entier, permettant différents choix d'implémentation en fonction des besoins et préférences spécifiques du programmeur.

Déclaration de sortie Cet article est reproduit sur : https://www.tutorialspoint.com/php-program-to-count-set-bits-in-an-integer En cas de violation, veuillez contacter [email protected] pour le supprimer.
Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3