Program w C ++ do konwersji liczb binarnych na dziesiętne i odwrotnie

W tym przykładzie nauczysz się ręcznie konwertować liczbę dwójkową na dziesiętną i dziesiętną na dwójkową, tworząc funkcje zdefiniowane przez użytkownika.

Aby zrozumieć ten przykład, powinieneś znać następujące tematy programowania w języku C ++:

  • Funkcje C ++
  • Typy funkcji zdefiniowanych przez użytkownika w C ++
  • Rekursja w C ++
  • C ++ if, if… else i Nested if… else
  • C ++ while i do… while Loop

Odwiedź tę stronę, aby dowiedzieć się, jak przekonwertować liczbę dwójkową na dziesiętną.

Przykład 1: C ++ Program do konwersji liczb dwójkowych na dziesiętne

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

Wynik

 Wpisz liczbę binarną: 1111 1111 binarnie = 15 

Odwiedź tę stronę, aby dowiedzieć się, jak przekonwertować liczbę dziesiętną na dwójkową.

Przykład 2: Program w C ++ do konwersji liczby dziesiętnej na dwójkową

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

Wynik

 Wprowadź liczbę dziesiętną: 19 Krok 1:19/2, Reszta = 1, Iloraz = 9 Krok 2: 9/2, Reszta = 1, Iloraz = 4 Krok 3: 4/2, Reszta = 0, Iloraz = 2 Krok 4 : 2/2, Reszta = 0, Iloraz = 1 Krok 5: 1/2, Reszta = 1, Iloraz = 0 19 dziesiętnie = 10011 dwójkowo

Interesujące artykuły...