Tässä esimerkissä opit muuntamaan binääriluvun desimaaliksi ja desimaaliluvun binääriksi manuaalisesti luomalla käyttäjän määrittämiä toimintoja.
Tämän esimerkin ymmärtämiseksi sinulla on oltava tieto seuraavista C ++ -ohjelmointiaiheista:
- C ++ -toiminnot
- Käyttäjän määrittelemien toimintojen tyypit C ++: ssa
- C ++ Rekursio
- C ++ jos, jos… muu ja sisäkkäinen, jos … muuten
- C ++ taas ja tee … silmukan aikana
Tältä sivulta saat lisätietoja binääriluvun muuntamisesta desimaaliksi.
Esimerkki 1: C ++ -ohjelma binääriluvun muuntamiseksi desimaaliksi
#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; )
Tuotos
Syötä binääriluku: 1111 1111 binäärinä = 15
Käy tällä sivulla oppiaksesi kuinka muuntaa desimaaliluku binääriksi.
Esimerkki 2: C ++ -ohjelma desimaaliluvun muuntamiseksi binääriseksi
#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; )
Tuotos
Syötä desimaaliluku: 19 Vaihe 1: 19/2, Jäännös = 1, Lainamäärä = 9 Vaihe 2: 9/2, Jäännös = 1, Laina = 4 Vaihe 3: 4/2, Jäännös = 0, Luku = 2 Vaihe 4 : 2/2, loppu = 0, osamäärä = 1 Vaihe 5: 1/2, loppu = 1, osamäärä = 0 19 desimaalin tarkkuudella = 10011 binäärisenä