Бинарна у децимална конверзија у Ц++

Binarna U Decimalna Konverzija U C



У чланку ћемо видети конверзију бинарних вредности у децималне вредности у Ц++ програму. Бинарни број је представљен цифрама 0 и 1, док децималне вредности садрже цифре које се крећу од 0 до 9. Да би се извршила бинарна у децимална конверзија, бинарну вредност треба помножити са 2 подићи на степен „ н” почевши од десне и померајући се улево са вишим „н”. Хајде да применимо ово у коду да трансформишемо бинарну у децималну вредност.

Пример 1: Програм од бинарног у децимални користећи петљу „Вхиле“.

Имамо следећи програм за претварање броја из бинарног у децимални. У оквиру програма користимо петљу „вхиле“ за бинарну конверзију у децимални.

#инцлуде <иостреам>
#инцлуде <цматх>

Користећи именског простора стд ;

инт цонверсионОфБин ( дугачак дугачак ) ;

инт главни ( ) {
дугачак дугачак на једном ;
цоут << 'Потребан бинарни број: ' ;
једење >> на једном ;
цоут << на једном << ' у бинарном облику = ' << цонверсионОфБин ( на једном ) << 'у децималном' ;
повратак 0 ;
}

инт цонверсионОфБин ( дугачак дугачак на једном ) {
инт тако = 0 , Икс = 0 , остатак ;

док ( на једном ! = 0 ) {
остатак = на једном % 10 ;
на једном / = 10 ;
дец + = остатак * пов ( 2 , Икс ) ;
++ Икс ;
}

повратак тако ;
}

Овде дефинишемо датотеку заглавља „иостреам“ за улазне и излазне токове и „цматх“ за коришћење математичке функције у програму. Након тога дефинишемо функцију ЦонверсионОфБин() где се прослеђује параметар типа „лонг лонг“. Затим имамо позив функције маин() за извршавање програма. Унутар функције маин() декларишемо дугу променљиву типа интер под називом „нум“.







Након тога, функција ЦонверсионОфБин() претвара улазни бинарни број у децимални број. За ово имамо дефиницију функције ЦонверсионОфБин() након кода драјвера. Функција ЦонверсионОфБин() се прослеђује са променљивом „нум“ која има бинарни број. Затим позивамо петљу „вхиле“ да трансформишемо бинарни број у „нум“ у децималну вредност. Пре тога, иницијализујемо променљиве „деци“, „к“ и „ремаиндер“ са вредношћу „0“.



Унутар петље „вхиле“, операција дељења се спроводи да би се представила крајња десна вредност бинарног броја. Резултати дељења се чувају у променљивој „остатак“. Затим додајемо резултате остатка и резултате снаге у променљиву „деци“. Варијабла 'к' наставља да процењује активну снагу 2.



Резултати претварања наведених бинарних бројева у децималне вредности се постижу у Ц++ конзоли:





Пример 2: Програм од бинарног у децимални користећи петљу „Фор“.

Трансформација из бинарне у децимални је обављена коришћењем „вхиле“ петље. Међутим, такође можемо користити метод петље „фор“ да трансформишемо бинарне битове у децимални број.



#инцлуде <иостреам>
#инцлуде <стринг>

инт главни ( ) {
стд :: низ бин ;
стд :: цоут << 'Унесите бинарни број: ' ;
стд :: једење >> бин ;

инт дец = 0 ;
инт басеИс = 1 ;

за ( инт а = бин. дужина ( ) - 1 ; а >= 0 ; а -- ) {
ако ( бин [ а ] == '1' ) {
дец + = басеИс ;
}
басеИс * = 2 ;
}

стд :: цоут << 'Резултати у децималном облику: ' << дец << стд :: ендл ;

повратак 0 ;
}

Овде почињемо са програмом функције маин() где имамо променљиву „стд::стринг“ која је „бин“ за чување бинарног броја које је унео корисник у промпту. У почетку, промпт ће од корисника тражити да унесе бинарни број користећи наредбу „цоут“. Затим ће команда 'цин' прочитати тај бинарни број. Након тога, иницијализујемо променљиву „дец“ вредношћу „0“ и променљиву „басеИс“ вредношћу „1“ да бисмо добили децимални еквивалент.

Затим позивамо петљу „фор“ која се креће преко сваког броја наведеног бинарног записа с десна на лево. Унутар петље имамо услов „иф“ да проверимо да ли је бинарни број 1. Ако је 1, децимална вредност се додаје променљивој „дец“. Променљива „басеИс“ има моћ 2 да се помножи са 1 на свакој итерацији.

Вредност бинарног броја и његова конверзија у децималну вредност је приказана на екрану упита:

Пример 3: Програм од бинарног низа у децимални

Вредност бинарног низа је сада дефинисана да конвертује њену вредност у децималну вредност. Следећа имплементација је урађена да се вредност бинарног стринга трансформише у децималну вредност:

#инцлуде <иостреам>
#инцлуде <стринг>
Користећи именског простора стд ;

инт бинТоДец ( стринг вал )
{
стринг вредност = вал ;
инт децимална_вредност = 0 ;

инт основна_вредност = 1 ;

инт само = вредност. дужина ( ) ;
за ( инт м = само - 1 ; м >= 0 ; м -- ) {
ако ( вал [ м ] == '1' )
децимална_вредност + = основна_вредност ;
основна_вредност = основна_вредност * 2 ;
}

повратак децимална_вредност ;
}

инт главни ( )
{
стринг вал = '11100101' ;
цоут << бинТоДец ( вал ) << ендл ;
}

Овде почињемо са креирањем функције БинТоДец() за конверзију бинарних цифара у децималне вредности. Функција БинТоДец() узима аргумент „вал“ типа стринг. Унутар функције БинТоДец() иницијализујемо променљиву „валуе” променљивом „вал” која представља да ће вредност променљиве „вал” бити сачувана у променљивој „валуе”. Затим декларишемо нову променљиву, „децимал_валуе“, којој је додељена вредност 0.

Слично, променљива „басе_валуе“ је подешена и иницијализована вредношћу 1. Затим дефинишемо променљиву „лен“ где се позива функција ленгтх() да би се добила дужина бинарног броја. Након иницијализације променљиве, имамо итерацију петље „фор“. Петља „фор“ понавља сваку цифру бинарног броја с десна на лево.

Након тога, имамо функцију маин() где је бинарни број наведен као вредност низа променљивој „вал“ која се конвертује у децималну вредност како ми зовемо функцију БинТоДец(вал) командом „цоут“.

Бинарна вредност типа стринг сада се конвертује у децималну вредност као што је приказано у следећем:

Пример 4: Програм од бинарног у децимални користећи класу битова

Поред тога, можемо да конвертујемо бинарни број у децимални број тако што ћемо дефинисати „битсет“ класу Ц++ у програму. Он пружа функције кроз које је поступак конверзије веома једноставан.

#инцлуде <иостреам>
#инцлуде <битсет>

инт главни ( ) {
стд :: низ бинариИс ;
стд :: цоут << „Наведите бинарни број: „ ;
стд :: једење >> бинариИс ;

стд :: битсет < 64 > бинарни ( бинариИс ) ;
непотписан дугачак децималНумбер = бинарни. предуго ( ) ;

стд :: цоут << 'Децимални број: ' << децималНумбер << стд :: ендл ;

повратак 0 ;
}

Овде смо поставили „битсет“ библиотеку Ц++ у заглављу што је од велике помоћи када се ради са бинарним вредностима. После овога, имамо дефиницију функције маин() где користимо „стд::стринг“ да прогласимо променљиву „бинариИс“. Променљива „бинариИс“ чува вредност бинарне вредности у стрингу. Затим тражимо од корисника да дода бинарни број у промпт од стране корисника и он се чита кроз команду „цин“. Након тога подешавамо величину битова која може бити 64 бита цео број. Затим, функција то_улонг() се позива из класе „битсет“ у променљиву „децималНумбер“. Функција то_улонг() конвертује скуп битова у непотписани дуги тип података. На крају, користимо команду „цоут“ за штампање децималне вредности бинарне вредности коју је дао корисник.

Бинарна вредност коју је дао корисник сада се претвара у децималну вредност:

Закључак

У закључку смо покрили методе претварања бинарне вредности у децималну вредност. Користили смо петљу „фор“, петљу „вхиле“ и приступе класе битова за бинарну конверзију у децимални. Ови приступи трансформишу бинарне бројеве у децималне системе што олакшава читање и разумевање.