Как да конвертирате двоични числа в десетични в C

Kak Da Konvertirate Dvoicni Cisla V Deseticni V C



Двоичните числа са комбинации от 0s и 1s, докато десетичните числа са числа с основа 10. В програмирането на C ние преобразуваме двоични числа в десетични, за да подобрим производителността на кода и да го направим по-лесен за разбиране от учащите.

Това ръководство ще разгледа как да конвертирате двоични числа в десетични числа в C.

Преди да навлезем в самата концепция, нека видим какво представляват двоичните и десетичните числа в C.







Двоични и десетични числови формати в C

Двоичните числа са числа, представени под формата на комбинация от две цифри 0 и 1, и те се наричат ​​бройна система с основа 2. Десетичните числа, от друга страна, са числа с основа 10, които се състоят от цифри, вариращи от 0 до 9.



Както виждате под името binary, което означава две, така че когато имаме числа под формата на комбинация от две цифри 0 и 1, ние ги наричаме двоични числа. тя се нарича номерна система с основа 2.



Защо да конвертирате двоични числа в десетични в C

Работата с двоични числа е предизвикателство за разработчиците поради многото възможни комбинации от 0 и 1. Десетичните числа, от друга страна, са по-лесни за разбиране и обработка, което ги прави по-бърз и по-ефективен метод за C програми. Преобразуването на двоични числа в десетични числа в C включва умножаване на всички двоични цифри по подходящата степен на две и добавяне на резултатите, което се извършва с помощта на цикли.





Прост алгоритъм за преобразуване на двоични в десетични в C

Ето един прост алгоритъм за преобразуване на двоичен в десетичен в C с помощта на шест прости стъпки:

  • Вземете двоично число като вход от потребителя.
  • Инициализирайте променлива „decimal“ на 0 и променлива „base“ на 1.
  • Извлечете най-дясната цифра от двоичното число с помощта на оператора за модул (%) и добавете произведението на тази цифра и основата към десетичната променлива.
  • Умножете базовата променлива по 2.
  • Премахнете най-дясната цифра от двоичното число, като използвате целочислено деление (/).
  • Повторете стъпки 3-5, докато всички цифри бъдат обработени.
  • Показване на десетичната стойност на двоичното число, съхранено в променливата „decimal“.

Преобразувайте двоични числа в десетични в C

Следното е прост код за преобразуване на двоични числа в десетични в C програмиране.



#include

#include

вътр основен ( ) {

дълго дълго а ;

printf ( 'Моля, въведете двоично число: ' ) ;

сканиране ( '%lld' , и а ) ;

printf ( '%lld в двоичен = %d във формата на десетичен' , а , binaryToDecimal ( а ) ) ;

връщане 0 ; }

вътр binaryToDecimal ( дълго дълго а ) {

вътр дек = 0 , b = 0 , r ;

докато ( а != 0 ) {

r = а % 10 ;

а /= 10 ;

дек += r * пау ( 2 , b ) ;

++ b ;

}

връщане дек ;

}

В горния код глобална функция е направена като име „binaryToDecimal“ . След това в main декларираме дълга дълга променлива като 'а' и помолете потребителя да добави двоично число и да го преобразува в десетично чрез извикване на „binaryToDecimal“ функция с параметър на a”. В „binaryToDecimal“ дефиниране на функция десетично преобразуване чрез цикъла while.

Изход

Можете да използвате и вграден strtol() функция за преобразуване на двоични числа в десетични в C програмиране.

Следва кодът за такава функция:

#include

#include

вътр основен ( ) {

въглен двоичен_низ [ ] = '1110' ;

въглен * ptr ;

дълго десетична_стойност ;

десетична_стойност = катастрофира ( двоичен_низ , и ptr , 2 ) ;

printf ( 'двоичен низ' % с ' е равно на десетичната стойност %ld. ' , двоичен_низ , десетична_стойност ) ;

връщане 0 ;

}

Горният код преобразува двоичен низ „1110“ в еквивалентната му десетична стойност с помощта на strtol() функция, която приема като аргументи двоичния низ, указател към указател char и основата на числовата система. Накрая той отпечатва резултата на конзолата с помощта на printf().

Изход

Заключение

Както знаем, хората са запознати с десетичните числа в сравнение с двоичните, тъй като са трудни за управление. Десетичните цифри са лесни за извършване на аритметични операции, тъй като са с основа 10 и тяхната обработка е по-бърза в сравнение с двоичните цифри, следователно двоичните числа се преобразуват в десетични. Горният преглед обясни преобразуването на двоични числа в десетични с програмата C с дефинирани от потребителя функции и вграден strtol() функция.