In dit voorbeeld leert u hoe u een binair getal naar een decimaal getal en een decimaal getal naar een binair getal handmatig kunt converteren door door de gebruiker gedefinieerde functies te maken.
Om dit voorbeeld te begrijpen, moet u kennis hebben van de volgende C ++ programmeeronderwerpen:
- C ++ Functies
- Typen door de gebruiker gedefinieerde functies in C ++
- C ++ recursie
- C ++ if, if… else en genest if… else
- C ++ while en do … while Loop
Bezoek deze pagina om te leren hoe u een binair getal naar een decimaal getal converteert.
Voorbeeld 1: C ++ Programma om een binair getal naar een decimaal te converteren
#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; )
Uitvoer
Voer een binair getal in: 1111 1111 in binair = 15
Bezoek deze pagina om te leren hoe u een decimaal getal naar een binair getal converteert.
Voorbeeld 2: C ++ Programma om een decimaal getal naar een binair getal te converteren
#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; )
Uitvoer
Voer een decimaal getal in: 19 Stap 1:19/2, Rest = 1, Quotiënt = 9 Stap 2: 9/2, Rest = 1, Quotiënt = 4 Stap 3: 4/2, Rest = 0, Quotiënt = 2 Stap 4 : 2/2, rest = 0, quotiënt = 1 Stap 5: 1/2, rest = 1, quotiënt = 0 19 in decimaal = 10011 in binair