C ++ - program för att konvertera binärt nummer till Octal och vice versa

I det här exemplet lär du dig att konvertera binärt tal till oktalt och oktalt tal till binärt manuellt genom att skapa en användardefinierad funktion.

För att förstå detta exempel bör du ha kunskap om följande C ++ programmeringsämnen:

  • C ++ - funktioner
  • Typer av användardefinierade funktioner i C ++
  • C ++ if, if… else och Nested if … else
  • C ++ medan och gör … medan Loop

Exempel 1: Program för att konvertera binär till oktal

I det här programmet konverterar vi först det binära talet till decimal. Därefter konverteras decimaltalet till oktalt.

 #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; ) 

Produktion

 Ange ett binärt tal: 10001 10001 i binärt = 21 i oktalt

Det binära numret som användaren angett skickas till convertBinaryToOctal()funktionen. Och den här funktionen omvandlar talet till oktalt och återgår till main()funktionen

Exempel 2: Program för att konvertera oktal till binär

I det här programmet konverteras det oktala talet till decimal till en början. Därefter konverteras decimaltal till binärt tal.

 #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; ) 

Produktion

 Ange ett oktalt tal: 54 54 i oktalt = 101100 

Det oktala numret som användaren har angett skickas till convertOctalToBinary()funktionen. Och den här funktionen omvandlar talet till binärt och returnerar main()funktionen

Intressanta artiklar...