Programme C ++ pour convertir un nombre binaire en octal et vice-versa

Dans cet exemple, vous apprendrez à convertir manuellement un nombre binaire en octal et un nombre octal en binaire en créant une fonction définie par l'utilisateur.

Pour comprendre cet exemple, vous devez avoir la connaissance des rubriques de programmation C ++ suivantes:

  • Fonctions C ++
  • Types de fonctions définies par l'utilisateur en C ++
  • C ++ if, if… else et Nested if… else
  • Boucle while et do… while C ++

Exemple 1: programme pour convertir le binaire en octal

Dans ce programme, nous allons d'abord convertir le nombre binaire en nombre décimal. Ensuite, le nombre décimal est converti en octal.

 #include #include using namespace std; int convertBinarytoOctal(long long); int main() ( long long binaryNumber; cout <> binaryNumber; cout << binaryNumber << " in binary = " << convertBinarytoOctal(binaryNumber) << " in octal "; return 0; ) int convertBinarytoOctal(long long binaryNumber) ( int octalNumber = 0, decimalNumber = 0, i = 0; while(binaryNumber != 0) ( decimalNumber += (binaryNumber%10) * pow(2,i); ++i; binaryNumber/=10; ) i = 1; while (decimalNumber != 0) ( octalNumber += (decimalNumber % 8) * i; decimalNumber /= 8; i *= 10; ) return octalNumber; ) 

Production

 Entrez un nombre binaire: 10001 10001 en binaire = 21 en octal

Le nombre binaire entré par l'utilisateur est passé à la convertBinaryToOctal()fonction. Et, cette fonction convertit le nombre en octal et retourne à la main()fonction

Exemple 2: programme pour convertir octal en binaire

Dans ce programme, le nombre octal est d'abord converti en nombre décimal. Ensuite, le nombre décimal est converti en nombre binaire.

 #include #include using namespace std; long long convertOctalToBinary(int); int main() ( int octalNumber; cout <> octalNumber; cout << octalNumber << " in octal = " << convertOctalToBinary(octalNumber) << "in binary"; return 0; ) long long convertOctalToBinary(int octalNumber) ( int decimalNumber = 0, i = 0; long long binaryNumber = 0; while(octalNumber != 0) ( decimalNumber += (octalNumber%10) * pow(8,i); ++i; octalNumber/=10; ) i = 1; while (decimalNumber != 0) ( binaryNumber += (decimalNumber % 2) * i; decimalNumber /= 2; i *= 10; ) return binaryNumber; ) 

Production

 Entrez un nombre octal: 54 54 en octal = 101100 

Le nombre octal entré par l'utilisateur est passé à la convertOctalToBinary()fonction. Et, cette fonction convertit le nombre en binaire et renvoie la main()fonction

Articles intéressants...