. Complément numérique

WBOY
Libérer: 2024-08-23 06:35:11
original
318 Les gens l'ont consulté

. Number Complement

476. Complément numérique

Difficulté :Facile

Sujets :Manipulation des bits

Le complément d'un entier est l'entier que vous obtenez lorsque vous retournez tous les 0 en 1 et tous les 1 en 0 dans sa représentation binaire.

  • Par exemple, L'entier 5 est "101" en binaire et son complément est "010" qui est l'entier 2.

Étant donné un nombre entier, renvoieson complément.

Exemple 1 :

  • Entrée :num = 5
  • Sortie :2
  • Explication :La représentation binaire de 5 est 101 (pas de bits zéro en tête) et son complément est 010. Vous devez donc sortir 2.

Exemple 2 :

  • Entrée :num = 1
  • Sortie :0
  • Explication :La représentation binaire de 1 est 1 (pas de bits zéro en tête) et son complément est 0. Vous devez donc afficher 0.

Contraintes :

  • 1 <= num < 231

Remarque :Cette question est la même que 1009. Complément de l'entier en base 10

Solution :

Nous devons inverser les bits de la représentation binaire d'un entier donné et renvoyer l'entier résultant.

Étapes pour résoudre le problème :

  1. Convertissez le nombre en sa représentation binaire.
  2. Inversez les bits(c'est-à-dire changez 0 en 1 et 1 en 0).
  3. Convertissez la chaîne binaire inversée en un entier.

Implémentons cette solution en PHP :476. Complément numérique

        

Explication:

  • decbin($num): convertit l'entier donné en sa représentation sous forme de chaîne binaire.
  • Inverser les bits: Nous parcourons la chaîne binaire et retournons chaque bit en vérifiant s'il s'agit d'un 1 ou d'un 0.
  • bindec($flipped): reconvertit la chaîne binaire inversée en un entier.

Exemples d'exécutions :

  1. Entrée :5

    • Représentation binaire : "101"
    • Binaire inversé : "010"
    • Sortie : 2
  2. Entrée :1

    • Représentation binaire : "1"
    • Binaire inversé : "0"
    • Sortie : 0

Cette solution calcule efficacement le complément en retournant les bits de la représentation binaire du nombre donné.

Liens de contact

Si vous avez trouvé cette série utile, pensez à donner une étoile auréférentielsur GitHub ou à partager la publication sur vos réseaux sociaux préférés ?. Votre soutien signifierait beaucoup pour moi !

Si vous souhaitez du contenu plus utile comme celui-ci, n'hésitez pas à me suivre :

  • LinkedIn
  • GitHub

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:dev.to
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!