C ++ programma binārā skaitļa konvertēšanai decimāldaļās un otrādi

Šajā piemērā jūs iemācīsities pārveidot bināro skaitli decimāldaļā, bet decimāldaļu - binārā, manuāli izveidojot lietotāja definētas funkcijas.

Lai saprastu šo piemēru, jums jāzina par šādām C ++ programmēšanas tēmām:

  • C ++ funkcijas
  • Lietotāja definēto funkciju veidi C ++
  • C ++ rekursija
  • C ++, ja, ja … cits, un Nested, ja … cits
  • C ++ kamēr un darīt … kamēr cilpa

Apmeklējiet šo lapu, lai uzzinātu, kā konvertēt bināro skaitli aiz komata.

1. piemērs: C ++ programma binārā skaitļa pārvēršanai decimālā

 #include #include using namespace std; int convertBinaryToDecimal(long long); int main() ( long long n; cout <> n; cout << n << " in binary = " << convertBinaryToDecimal(n) << "in decimal"; return 0; ) int convertBinaryToDecimal(long long n) ( int decimalNumber = 0, i = 0, remainder; while (n!=0) ( remainder = n%10; n /= 10; decimalNumber += remainder*pow(2,i); ++i; ) return decimalNumber; ) 

Rezultāts

 Ievadiet bināro skaitli: 1111 1111 binārā = 15 

Apmeklējiet šo lapu, lai uzzinātu, kā pārvērst decimālo skaitli binārā.

2. piemērs: C ++ programma, lai decimāldaļu pārvērstu binārā

 #include #include using namespace std; long long convertDecimalToBinary(int); int main() ( int n, binaryNumber; cout <> n; binaryNumber = convertDecimalToBinary(n); cout << n << " in decimal = " << binaryNumber << " in binary" << endl ; return 0; ) long long convertDecimalToBinary(int n) ( long long binaryNumber = 0; int remainder, i = 1, step = 1; while (n!=0) ( remainder = n%2; cout << "Step " << step++ << ": " << n << "/2, Remainder = " << remainder << ", Quotient = " << n/2 << endl; n /= 2; binaryNumber += remainder*i; i *= 10; ) return binaryNumber; )

Rezultāts

 Ievadiet decimāldaļu: 19 1. darbība: 19/2, atlikums = 1, kvantitāte = 9 2. darbība: 9/2, atlikums = 1, kvantitāte = 4 3. darbība: 4/2, atlikums = 0, kvantitāte = 2 4. darbība. : 2/2, atlikums = 0, koeficients = 1 5. solis: 1/2, atlikums = 1, koeficients = 0 19 aiz komata = 10011 binārā

Interesanti raksti...