Program C ++ pentru a converti numărul binar în octal și invers

În acest exemplu, veți învăța să convertiți numărul binar în octal și numărul octal în binar manual prin crearea unei funcții definite de utilizator.

Pentru a înțelege acest exemplu, ar trebui să aveți cunoștințele următoarelor subiecte de programare C ++:

  • Funcții C ++
  • Tipuri de funcții definite de utilizator în C ++
  • C ++ dacă, dacă … altfel și cuibărit dacă … altfel
  • C ++ while și do… while Buclă

Exemplul 1: Program pentru conversia binar în octal

În acest program, vom converti mai întâi numărul binar în zecimal. Apoi, numărul zecimal este convertit în 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; ) 

Ieșire

 Introduceți un număr binar: 10001 10001 în binar = 21 în octal

Numărul binar introdus de utilizator este trecut la convertBinaryToOctal()funcție. Și această funcție convertește numărul în octal și revine la main()funcție

Exemplul 2: Program pentru conversia octal în binar

În acest program, numărul octal este convertit la zecimal la început. Apoi, numărul zecimal este convertit în număr binar.

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

Ieșire

 Introduceți un număr octal: 54 54 în octal = 101100 

Numărul octal introdus de utilizator este trecut la convertOctalToBinary()funcție. Și această funcție convertește numărul în binar și returnează main()funcția

Articole interesante...