Conversion binaire en décimal en C++

Conversion Binaire En Decimal En C



Dans l'article, nous verrons la conversion de valeurs binaires en valeurs décimales dans un programme C++. Le nombre binaire est représenté par les chiffres 0 et 1, tandis que les valeurs décimales contiennent les chiffres compris entre 0 et 9. Pour effectuer une conversion binaire en décimal, la valeur binaire doit être multipliée par 2 élevée à la puissance « n' en partant de la droite et en se déplaçant vers la gauche avec un 'n' plus élevé. Implémentons cela dans le code pour transformer un binaire en valeur décimale.

Exemple 1 : Programme de binaire en décimal à l'aide de la boucle « While »

Nous avons un programme suivant pour convertir le nombre binaire en décimal. Dans le programme, nous utilisons la boucle « while » pour la conversion binaire en décimal.

#include
#inclure

en utilisant espace de noms norme ;

int conversionDeBin ( long long ) ;

int principal ( ) {
long long sur une ;
cout << 'Numéro binaire requis : ' ;
manger >> sur une ;
cout << sur une << ' en binaire = ' << conversionDeBin ( sur une ) << 'en décimal' ;
retour 0 ;
}

int conversionDeBin ( long long sur une ) {
int donc = 0 , X = 0 , reste ;

alors que ( sur une ! = 0 ) {
reste = sur une % dix ;
sur une / = dix ;
déc + = reste * pouf ( 2 , X ) ;
++ X ;
}

retour donc ;
}

Ici, nous définissons le fichier d'en-tête « iostream » pour les flux d'entrée et de sortie et le « cmath » pour utiliser la fonction mathématique dans le programme. Après cela, nous définissons la fonction ConversionOfBin() où le paramètre de type « long long » est passé. Ensuite, nous avons un appel de fonction main() pour exécuter le programme. Nous déclarons une longue variable inter-type appelée « num » dans la fonction main().







Après cela, la fonction ConversionOfBin() convertit le nombre binaire d'entrée en nombre décimal. Pour cela, nous avons la définition de la fonction ConversionOfBin() après le code du pilote. La fonction ConversionOfBin() est passée avec la variable « num » qui possède le nombre binaire. Ensuite, nous appelons la boucle « while » pour transformer le nombre binaire en « num » en valeur décimale. Avant cela, nous initialisons les variables « deci », « x » et « reste » avec la valeur « 0 ».



Dans la boucle « while », l’opération de division est effectuée pour représenter la valeur la plus à droite du nombre binaire. Les résultats de la division sont stockés dans la variable « reste ». Ensuite, nous ajoutons les résultats du reste et les résultats de puissance dans la variable « deci ». La variable « x » continue d'évaluer la puissance active de 2.



Les résultats de la conversion des nombres binaires spécifiés en valeurs décimales sont obtenus dans la console C++ :





Exemple 2 : Programme de binaire en décimal à l'aide de la boucle « For »

La transformation du binaire en décimal a été réalisée à l’aide d’une boucle « while ». Cependant, nous pouvons également utiliser la méthode de la boucle « for » pour transformer les bits binaires en nombre décimal.



#include
#include

int principal ( ) {
norme :: chaîne poubelle ;
norme :: cout << « Numéro binaire d'entrée : » ;
norme :: manger >> poubelle ;

int déc = 0 ;
int baseEst = 1 ;

pour ( int un = poubelle. longueur ( ) - 1 ; un >= 0 ; un -- ) {
si ( poubelle [ un ] == '1' ) {
déc + = baseEst ;
}
baseEst * = 2 ;
}

norme :: cout << « Résultats en décimal : » << déc << norme :: fin ;

retour 0 ;
}

Ici, nous commençons par le programme de fonction main() où nous avons la variable « std::string » qui est « bin » pour stocker le nombre binaire saisi par l'utilisateur dans l'invite. Initialement, l'invite demandera à l'utilisateur de saisir le nombre binaire à l'aide de l'instruction « cout ». Ensuite, la commande « cin » lira ce nombre binaire. Après cela, nous initialisons la variable « dec » avec la valeur de « 0 » et la variable « baseIs » avec la valeur de « 1 » pour obtenir l'équivalent décimal.

Ensuite, nous appelons une boucle « pour » qui boucle sur chaque nombre du binaire spécifié de droite à gauche. Dans la boucle, nous avons une condition « if » pour vérifier si le nombre binaire est 1. S'il est 1, la valeur décimale est ajoutée à la variable « dec ». La variable « baseIs » a la puissance de 2 pour être multipliée par 1 à chaque itération.

La valeur du nombre binaire et sa conversion en valeur décimale sont affichées sur l'écran d'invite :

Exemple 3 : Programme de chaîne binaire en décimal

La valeur de la chaîne binaire est maintenant définie pour convertir sa valeur en valeur décimale. L'implémentation suivante est effectuée pour transformer la valeur de la chaîne binaire en valeur décimale :

#include
#include
en utilisant espace de noms norme ;

int binVersDéc ( chaîne val )
{
valeur de chaîne = Val ;
int valeur_décimale = 0 ;

int valeur_de base = 1 ;

int seulement = valeur. longueur ( ) ;
pour ( int m = seulement - 1 ; m >= 0 ; m -- ) {
si ( Val [ m ] == '1' )
valeur_décimale + = valeur_de base ;
valeur_de base = valeur_de base * 2 ;
}

retour valeur_décimale ;
}

int principal ( )
{
chaîne val = '11100101' ;
cout << binVersDéc ( Val ) << fin ;
}

Ici, nous commençons par créer une fonction BinToDec() pour la conversion de chiffres binaires en valeurs décimales. La fonction BinToDec() prend l'argument « val » du type chaîne. Dans la fonction BinToDec(), nous initialisons la variable « value » avec la variable « val » qui représente que la valeur de la variable « val » sera stockée dans la variable « value ». Ensuite, nous déclarons une nouvelle variable, « decimal_value », à laquelle est affectée la valeur 0.

De même, la variable « base_value » est définie et initialisée avec la valeur 1. Ensuite, nous définissons la variable « len » où la fonction length() est appelée pour obtenir la longueur du nombre binaire. Après l’initialisation de la variable, nous avons l’itération de la boucle « for ». La boucle « for » parcourt chaque chiffre d'un nombre binaire de droite à gauche.

Après cela, nous avons une fonction main() où le nombre binaire est spécifié sous forme de valeur de chaîne à la variable « val » qui est convertie en valeur décimale lorsque nous appelons la fonction BinToDec(val) avec la commande « cout ».

La valeur binaire de type chaîne est maintenant convertie en valeur décimale comme indiqué ci-dessous :

Exemple 4 : Programme de binaire en décimal à l'aide de la classe Bitset

De plus, nous pouvons convertir le nombre binaire en nombre décimal en définissant la classe « bitset » de C++ dans le programme. Il fournit les fonctions grâce auxquelles la procédure de conversion est très simple.

#include
#include

int principal ( ) {
norme :: chaîne binaireEst ;
norme :: cout << « Veuillez fournir un nombre binaire : » ;
norme :: manger >> binaireEst ;

norme :: jeu de bits < 64 > binaire ( binaireEst ) ;
non signé long nombre décimal = binaire. trop long ( ) ;

norme :: cout << 'Nombre décimal: ' << nombre décimal << norme :: fin ;

retour 0 ;
}

Ici, nous définissons la bibliothèque « bitset » de C++ dans l'en-tête, ce qui est très utile lorsque l'on travaille avec des valeurs binaires. Après cela, nous avons une définition de fonction main() où nous utilisons le « std::string » pour déclarer la variable « binaryIs ». La variable «binaryIs» stocke la valeur binaire dans la chaîne. Ensuite, nous demandons à l'utilisateur d'ajouter le nombre binaire dans l'invite par l'utilisateur et il est lu via la commande « cin ». Après cela, nous ajustons la taille des bits qui peut être un entier de 64 bits. Ensuite, la fonction to_ulong() est appelée depuis la classe « bitset » dans la variable « decimalNumber ». La fonction to_ulong() convertit l'ensemble de bits en un type de données long non signé. Enfin, nous utilisons la commande « cout » pour imprimer la valeur décimale de la valeur binaire donnée par l'utilisateur.

La valeur binaire fournie par l'utilisateur est désormais convertie en valeur décimale :

Conclusion

En conclusion, nous avons abordé les méthodes de conversion d'une valeur binaire en valeur décimale. Nous avons utilisé les boucles « for », « while » et les approches de classe bitset pour la conversion binaire en décimal. Ces approches transforment les nombres binaires en systèmes décimaux ce qui facilite la lecture et la compréhension.