Jak konwertować liczby binarne na dziesiętne w C

Jak Konwertowac Liczby Binarne Na Dziesietne W C



Liczby binarne to kombinacje zer i jedynek, podczas gdy liczby dziesiętne to liczby o podstawie 10. W programowaniu w języku C konwertujemy liczby binarne na liczby dziesiętne, aby poprawić wydajność kodu i ułatwić jego zrozumienie uczniom.

Te wytyczne omówią, jak konwertować liczby binarne na liczby dziesiętne w C.

Zanim przejdziemy do samej koncepcji, zobaczmy, czym są liczby binarne i dziesiętne w C.







Formaty liczb binarnych i dziesiętnych w C

Liczby binarne to liczby reprezentowane w postaci kombinacji dwóch cyfr 0 i 1 i są określane jako system liczbowy o podstawie 2. Z drugiej strony liczby dziesiętne to liczby o podstawie 10, które składają się z cyfr od 0 do 9.



Jak widać po nazwie binarny, co oznacza dwa, więc gdy mamy liczby w postaci kombinacji dwóch cyfr 0 i 1, nazywamy je liczbami binarnymi. jest określany jako system liczbowy o podstawie 2.



Po co konwertować liczby binarne na dziesiętne w C

Praca z liczbami binarnymi jest wyzwaniem dla programistów ze względu na wiele możliwych kombinacji zer i jedynek. Z drugiej strony liczby dziesiętne są łatwiejsze do zrozumienia i przetwarzania, co czyni je szybszą i wydajniejszą metodą dla programów C. Konwersja liczb binarnych na liczby dziesiętne w C polega na pomnożeniu wszystkich cyfr binarnych przez odpowiednią potęgę dwójki i dodaniu wyników, co odbywa się za pomocą pętli.





Prosty algorytm konwersji binarnej na dziesiętną w C

Oto prosty algorytm konwersji binarnej na dziesiętną w C w sześciu prostych krokach:

  • Weź liczbę binarną jako dane wejściowe od użytkownika.
  • Zainicjuj zmienną „dziesiętną” na 0, a zmienną „podstawową” na 1.
  • Wyodrębnij skrajną prawą cyfrę liczby binarnej za pomocą operatora modułu (%) i dodaj iloczyn tej cyfry i podstawy do zmiennej dziesiętnej.
  • Pomnóż zmienną bazową przez 2.
  • Usuń skrajną prawą cyfrę z liczby binarnej, używając dzielenia liczb całkowitych (/).
  • Powtarzaj kroki 3-5, aż wszystkie cyfry zostaną przetworzone.
  • Wyświetla wartość dziesiętną liczby binarnej zapisanej w zmiennej „dziesiętnej”.

Konwertuj liczby binarne na dziesiętne w C

Poniżej znajduje się prosty kod do konwersji liczb binarnych na dziesiętne w programowaniu C.



#include

#include

int główny ( ) {

długi długi A ;

drukujf ( „Proszę wprowadzić liczbę binarną:” ) ;

skanf ( '%lld' , & A ) ;

drukujf ( „%lld w systemie binarnym = %d w postaci dziesiętnej” , A , binarny na dziesiętny ( A ) ) ;

powrót 0 ; }

int binarny na dziesiętny ( długi długi A ) {

int grudzień = 0 , B = 0 , R ;

chwila ( A != 0 ) {

R = A % 10 ;

A /= 10 ;

grudzień += R * pow ( 2 , B ) ;

++ B ;

}

powrót grudzień ;

}

W powyższym kodzie funkcja globalna jest tworzona jako nazwa „binarny na dziesiętny” . Następnie w głównej deklarujemy zmienną long long as 'A' i poproś użytkownika, aby dodał liczbę binarną i przekonwertował ją na dziesiętną, wywołując funkcję „binarny na dziesiętny” funkcja z parametrem a”. w „binarny na dziesiętny” definicja funkcji konwersja dziesiętna przez pętlę while.

Wyjście

Możesz także użyć wbudowanego strtol() funkcja do konwersji liczb binarnych na dziesiętne w programowaniu C.

Poniżej znajduje się kod takiej funkcji:

#include

#include

int główny ( ) {

zwęglać łańcuch_binarny [ ] = '1110' ;

zwęglać * ptr ;

długi wartość_dziesiętna ;

wartość_dziesiętna = rozbił się ( łańcuch_binarny , & ptr , 2 ) ;

drukujf ( „Ciąg binarny” % S ' jest równe wartości dziesiętnej %ld. \N ' , łańcuch_binarny , wartość_dziesiętna ) ;

powrót 0 ;

}

Powyższy kod konwertuje ciąg binarny „1110” na jej równoważną wartość dziesiętną za pomocą strtol() funkcja, która jako argumenty przyjmuje łańcuch binarny, wskaźnik do wskaźnika typu char oraz podstawę systemu liczbowego. Na koniec drukuje wynik na konsoli za pomocą printf().

Wyjście

Wniosek

Jak wiemy, ludzie są zaznajomieni z liczbami dziesiętnymi w porównaniu z liczbami binarnymi, ponieważ trudno nimi zarządzać. Cyfry dziesiętne są łatwe do wykonywania operacji arytmetycznych, ponieważ mają podstawę 10, a ich przetwarzanie jest szybsze w porównaniu z cyframi binarnymi, dlatego liczby binarne są konwertowane na dziesiętne. Powyższy przegląd wyjaśnił konwersję liczb binarnych na dziesiętne za pomocą programu C z funkcjami zdefiniowanymi przez użytkownika i wbudowanymi strtol() funkcjonować.