Binarno v decimalno pretvorbo v C++

Binarno V Decimalno Pretvorbo V C



V članku si bomo ogledali pretvorbo binarnih vrednosti v decimalne vrednosti v programu C++. Binarno število je predstavljeno z števkama 0 in 1, medtem ko decimalne vrednosti vsebujejo števke v razponu od 0 do 9. Za pretvorbo binarnega v decimalno vrednost je treba binarno vrednost pomnožiti z 2, povečano na potenco ' n', ki se začne z desne in se premika levo z višjim 'n'. Implementirajmo to v kodo za pretvorbo binarne v decimalno vrednost.

Primer 1: Program binarnega v decimalno z uporabo zanke 'While'.

Imamo naslednji program za pretvorbo števila iz binarnega v decimalno. Znotraj programa uporabljamo zanko »while« za binarno pretvorbo v decimalno.

#include
#include

uporabo imenski prostor std ;

int conversionOfBin ( dolga dolga ) ;

int glavni ( ) {
dolga dolga na enem ;
cout << 'Zahtevano binarno število: ' ;
prehranjevanje >> na enem ;
cout << na enem << ' v dvojiškem = ' << conversionOfBin ( na enem ) << 'v decimalki' ;
vrnitev 0 ;
}

int conversionOfBin ( dolga dolga na enem ) {
int torej = 0 , x = 0 , ostanek ;

medtem ( na enem ! = 0 ) {
ostanek = na enem % 10 ;
na enem / = 10 ;
dec + = ostanek * pow ( 2 , x ) ;
++ x ;
}

vrnitev torej ;
}

Tukaj definiramo datoteko glave »iostream« za vhodne in izhodne tokove ter »cmath« za uporabo matematične funkcije v programu. Po tem definiramo funkcijo ConversionOfBin(), kjer se posreduje parameter tipa “long long”. Nato imamo klic funkcije main() za izvedbo programa. Znotraj funkcije main() deklariramo dolgo interno spremenljivko, imenovano »num«.







Po tem funkcija ConversionOfBin() pretvori vhodno binarno število v decimalno število. Za to imamo definicijo funkcije ConversionOfBin() za kodo gonilnika. Funkcija ConversionOfBin() se posreduje s spremenljivko »num«, ki ima binarno število. Nato pokličemo zanko 'while', da pretvorimo binarno število v 'num' v decimalno vrednost. Pred tem inicializiramo spremenljivke »deci«, »x« in »remainder« z vrednostjo »0«.



Znotraj zanke »while« se izvede operacija deljenja, ki predstavlja skrajno desno vrednost binarnega števila. Rezultati deljenja so shranjeni v spremenljivki 'ostanek'. Nato dodamo rezultate ostanka in potenčne rezultate v spremenljivko »deci«. Spremenljivka 'x' še naprej ocenjuje aktivno moč 2.



Rezultati pretvorbe podanih binarnih števil v decimalne vrednosti so doseženi v konzoli C++:





Primer 2: Program binarnega v decimalno z zanko »Za«.

Pretvorba iz binarnega v decimalno je bila izvedena z uporabo zanke 'while'. Vendar pa lahko uporabimo tudi metodo zanke 'za', da pretvorimo binarne bite v decimalno število.



#include
#include

int glavni ( ) {
std :: vrvica koš ;
std :: cout << 'Vnos binarnega števila: ' ;
std :: prehranjevanje >> koš ;

int dec = 0 ;
int baseI = 1 ;

za ( int a = koš. dolžina ( ) - 1 ; a >= 0 ; a -- ) {
če ( koš [ a ] == '1' ) {
dec + = baseI ;
}
baseI * = 2 ;
}

std :: cout << 'Decimalni rezultati: ' << dec << std :: konec ;

vrnitev 0 ;
}

Tukaj začnemo s funkcijskim programom main(), kjer imamo spremenljivko »std::string«, ki je »bin« za shranjevanje binarnega števila, ki ga uporabnik vnese v poziv. Na začetku bo poziv od uporabnika zahteval, da vnese binarno število z uporabo izjave »cout«. Nato bo ukaz 'cin' prebral to binarno število. Po tem inicializiramo spremenljivko 'dec' z vrednostjo '0' in spremenljivko 'baseIs' z vrednostjo '1', da dobimo decimalni ekvivalent.

Nato pokličemo zanko »za«, ki preleti vsako število določene dvojiške datoteke od desne proti levi. Znotraj zanke imamo pogoj »if« za preverjanje, ali je binarno število 1. Če je 1, se decimalna vrednost doda spremenljivki »dec«. Spremenljivka »baseIs« ima moč 2, da se pomnoži z 1 pri vsaki ponovitvi.

Vrednost binarnega števila in njegova pretvorba v decimalno vrednost je prikazana na pozivnem zaslonu:

Primer 3: Program binarnega niza v decimalni

Vrednost binarnega niza je zdaj definirana za pretvorbo svoje vrednosti v decimalno vrednost. Za pretvorbo vrednosti binarnega niza v decimalno vrednost je izvedena naslednja izvedba:

#include
#include
uporabo imenski prostor std ;

int binToDec ( niz val )
{
vrednost niza = val ;
int decimalna_vrednost = 0 ;

int osnovna_vrednost = 1 ;

int samo = vrednost. dolžina ( ) ;
za ( int m = samo - 1 ; m >= 0 ; m -- ) {
če ( val [ m ] == '1' )
decimalna_vrednost + = osnovna_vrednost ;
osnovna_vrednost = osnovna_vrednost * 2 ;
}

vrnitev decimalna_vrednost ;
}

int glavni ( )
{
niz val = '11100101' ;
cout << binToDec ( val ) << konec ;
}

Tukaj začnemo z ustvarjanjem funkcije BinToDec() za pretvorbo binarnih števk v decimalne vrednosti. Funkcija BinToDec() sprejme argument »val« vrste niza. Znotraj funkcije BinToDec() inicializiramo spremenljivko “value” s spremenljivko “val”, ki predstavlja, da bo vrednost spremenljivke “val” shranjena v spremenljivki “value”. Nato deklariramo novo spremenljivko, »decimal_value«, ki ji je dodeljena vrednost 0.

Podobno je nastavljena in inicializirana spremenljivka »base_value« z vrednostjo 1. Nato definiramo spremenljivko »len«, kjer se pokliče funkcija length(), da se pridobi dolžina binarnega števila. Po inicializaciji spremenljivke imamo ponovitev zanke 'for'. Zanka 'za' ponovi vsako binarno številko od desne proti levi.

Po tem imamo funkcijo main(), kjer je binarno število podano kot vrednost niza za spremenljivko »val«, ki se pretvori v decimalno vrednost, ko pokličemo funkcijo BinToDec(val) z ukazom »cout«.

Binarna vrednost vrste niza je zdaj pretvorjena v decimalno vrednost, kot je prikazano v naslednjem:

Primer 4: Program binarnega v decimalno z uporabo razreda Bitset

Poleg tega lahko pretvorimo binarno število v decimalno število tako, da v programu definiramo razred »bitset« C++. Zagotavlja funkcije, s pomočjo katerih je postopek pretvorbe zelo preprost.

#include
#include

int glavni ( ) {
std :: vrvica binaryIs ;
std :: cout << 'Prosimo, navedite binarno število: ' ;
std :: prehranjevanje >> binaryIs ;

std :: bitset < 64 > dvojiško ( binaryIs ) ;
nepodpisan dolga decimalnoštevilo = dvojiško. predolgo ( ) ;

std :: cout << 'Decimalno število:' << decimalnoštevilo << std :: konec ;

vrnitev 0 ;
}

Tukaj smo v glavi nastavili knjižnico »bitset« C++, kar je zelo koristno pri delu z binarnimi vrednostmi. Po tem imamo definicijo funkcije main(), kjer uporabimo »std::string« za deklaracijo spremenljivke »binaryIs«. Spremenljivka »binaryIs« shrani vrednost binary v nizu. Nato prosimo uporabnika, da doda binarno število v pozivu uporabnika in se prebere z ukazom 'cin'. Po tem prilagodimo velikost bitov, ki so lahko 64-bitna cela števila. Nato se funkcija to_ulong() pokliče iz razreda »bitset« v spremenljivko »decimalNumber«. Funkcija to_ulong() pretvori nabor bitov v nepredznačeni dolgi podatkovni tip. Nazadnje uporabimo ukaz »cout« za tiskanje decimalne vrednosti binarne vrednosti, ki jo poda uporabnik.

Binarna vrednost, ki jo poda uporabnik, se zdaj pretvori v decimalno vrednost:

Zaključek

Na koncu smo obravnavali metode pretvorbe binarne vrednosti v decimalno vrednost. Uporabili smo zanko »for«, zanko »while« in pristope razreda bitset za binarno pretvorbo v decimalno. Ti pristopi pretvorijo binarna števila v decimalne sisteme, kar olajša branje in razumevanje.