Ово упутство ће говорити о томе како претворити бинарне бројеве у децималне бројеве у Ц.
Пре него што уђемо у сам концепт, хајде да видимо шта су бинарни и децимални бројеви у Ц.
Бинарни и децимални формати бројева у Ц
Бинарни бројеви су бројеви представљени у облику комбинације две цифре 0 и 1, а називају се нумеричким системом основа 2. С друге стране, децимални бројеви су бројеви на бази 10 који се састоје од цифара у распону од 0 до 9.
Као што видите под називом бинарни што значи два, тако да када имамо бројеве у облику комбинације две цифре 0 и 1, називамо их бинарним бројевима. назива се нумеричким системом са 2.
Зашто претварати бинарне бројеве у децимале у Ц
Рад са бинарним бројевима је изазов за програмере због многих могућих комбинација 0 и 1. С друге стране, децимални бројеви су лакши за разумевање и обраду, што их чини бржим и ефикаснијим методом за Ц програме. Претварање бинарних бројева у децималне бројеве у Ц подразумева множење свих бинарних цифара одговарајућом потенцијом два и сабирање резултата, што се ради помоћу петљи.
Једноставан алгоритам за претварање бинарног у децимални у Ц
Ево једноставног алгоритма за претварање бинарног у децимални у Ц користећи шест једноставних корака:
- Узмите бинарни број као унос од корисника.
- Иницијализујте променљиву „децимала“ на 0 и променљиву „базу“ на 1.
- Издвоји крајњу десну цифру бинарног броја помоћу оператора модула (%) и додај производ ове цифре и базе децималној променљивој.
- Помножите основну променљиву са 2.
- Уклоните крајњу десну цифру из бинарног броја користећи целобројно дељење (/).
- Понављајте кораке 3-5 док све цифре не буду обрађене.
- Прикажите децималну вредност бинарног броја ускладиштеног у променљивој „децимала“.
Претворите бинарне бројеве у децимале у Ц
Следи једноставан код за претварање бинарних бројева у децимале у Ц програмирању.
#инцлуде <стдио.х>
#инцлуде <матх.х>
инт главни ( ) {
дугачак дугачак а ;
принтф ( 'Молимо унесите бинарни број: ' ) ;
сцанф ( '%ллд' , & а ) ;
принтф ( '%ллд у бинарном = %д у облику децималног' , а , бинариТоДецимал ( а ) ) ;
повратак 0 ; }
инт бинариТоДецимал ( дугачак дугачак а ) {
инт дец = 0 , б = 0 , р ;
док ( а != 0 ) {
р = а % 10 ;
а /= 10 ;
дец += р * пов ( 2 , б ) ;
++ б ;
}
повратак дец ;
}
У горњем коду, глобална функција је направљена као име “бинариТоДецимал” . Затим, у главном, декларишемо лонг лонг променљиву као 'а' и замолите корисника да дода бинарни број и конвертује га у децимални број позивањем “бинариТоДецимал” функција са параметром а”. У “бинариТоДецимал” дефиниција функције децимална конверзија кроз вхиле петљу.
Излаз
Такође можете користити уграђену стртол() функција за претварање бинарних бројева у децимале у Ц програмирању.
Следећи је код за такву функцију:
#инцлуде <стдио.х>#инцлуде <стдлиб.х>
инт главни ( ) {
цхар бинари_стринг [ ] = '1110' ;
цхар * птр ;
дугачак децимална_вредност ;
децимална_вредност = срушио ( бинари_стринг , & птр , 2 ) ;
принтф ( 'Бинарни стринг' % с ' је једнако децималној вредности %лд. \н ' , бинари_стринг , децимална_вредност ) ;
повратак 0 ;
}
Горњи код конвертује бинарни стринг “1110” у своју еквивалентну децималну вредност помоћу стртол() функција, која узима бинарни стринг, показивач на показивач цхар и базу бројног система као аргументе. Коначно, штампа резултат на конзоли користећи принтф().
Излаз
Закључак
Као што знамо, људи су упознати са децималним бројевима у поређењу са бинарним, јер је њима тешко управљати. Децималне цифре су једноставне за извођење аритметичких операција јер су у бази 10 и њихова обрада је бржа у поређењу са бинарним цифрама, па се бинарни бројеви претварају у децимале. Горњи преглед је објаснио претварање бинарних бројева у децимале помоћу Ц програма са кориснички дефинисаним функцијама и уграђеним стртол() функција.