Kaip konvertuoti dvejetainius skaičius į dešimtainius C

Kaip Konvertuoti Dvejetainius Skaicius I Desimtainius C



Dvejetainiai skaičiai yra 0 ir 1 deriniai, o dešimtainiai skaičiai yra 10 bazinių skaičių. C programuodami dvejetainius skaičius konvertuojame į dešimtainius skaičius, kad pagerintume kodo veikimą ir kad besimokantiesiems būtų lengviau suprasti.

Šioje gairėje bus aptarta, kaip dvejetainius skaičius konvertuoti į dešimtainius skaičius C.

Prieš patekdami į pačią sąvoką, pažiūrėkime, kas yra dvejetainiai ir dešimtainiai skaičiai C.







Dvejetainiai ir dešimtainiai skaičių formatai C

Dvejetainiai skaičiai yra skaičiai, pavaizduoti dviejų skaitmenų 0 ir 1 derinio forma, ir jie vadinami 2 bazine skaičių sistema. Kita vertus, dešimtainiai skaičiai yra 10 bazinių skaičių, kuriuos sudaro skaitmenys nuo 0 iki 9.



Kaip matote iš pavadinimo dvejetainis, kuris reiškia du, taigi, kai turime skaičius dviejų skaitmenų 0 ir 1 derinio pavidalu, mes juos vadiname dvejetainiais skaičiais. ji vadinama bazine 2 skaičių sistema.



Kodėl dvejetainius skaičius konvertuoti į dešimtainius C

Darbas su dvejetainiais skaičiais yra sudėtingas kūrėjams dėl daugybės galimų 0 ir 1 derinių. Kita vertus, dešimtainiai skaičiai yra lengviau suprantami ir apdorojami, todėl jie yra greitesnis ir efektyvesnis C programų metodas. Dvejetainių skaičių konvertavimas į dešimtainius skaičius C reiškia, kad visi dvejetainiai skaitmenys padauginami iš atitinkamos dviejų laipsnio ir sudedami rezultatai, o tai daroma naudojant kilpas.





Paprastas algoritmas konvertuoti dvejetainį į dešimtainį C

Čia yra paprastas algoritmas, kaip konvertuoti dvejetainį skaičių į dešimtainę C, naudojant šešis paprastus veiksmus:

  • Paimkite dvejetainį skaičių kaip įvestį iš vartotojo.
  • Kintamąjį „dešimtainis“ inicijuokite iki 0, o kintamąjį „base“ – iki 1.
  • Ištraukite dešinįjį dvejetainio skaičiaus skaitmenį naudodami modulio operatorių (%) ir šio skaitmens sandaugą pridėkite prie dešimtainio kintamojo.
  • Bazinį kintamąjį padauginkite iš 2.
  • Pašalinkite dešinįjį skaitmenį iš dvejetainio skaičiaus naudodami sveikųjų skaičių padalijimą (/).
  • Kartokite 3–5 veiksmus, kol bus apdoroti visi skaitmenys.
  • Rodyti dešimtainę dvejetainio skaičiaus reikšmę, saugomą dešimtainiame kintamajame.

Konvertuokite dvejetainius skaičius į dešimtainius C

Toliau pateikiamas paprastas kodas, skirtas dvejetainiams skaičiams konvertuoti į dešimtainius C programavimo būdus.



#include

#include

tarpt pagrindinis ( ) {

ilgai ilgai a ;

printf ( 'Prašome įterpti dvejetainį skaičių:' ) ;

scanf ( „%lld“ , & a ) ;

printf ( '%lld dvejetainiu formatu = %d dešimtainio skaičiaus forma' , a , binaryToDecimal ( a ) ) ;

grąžinti 0 ; }

tarpt binaryToDecimal ( ilgai ilgai a ) {

tarpt gruod = 0 , b = 0 , r ;

kol ( a != 0 ) {

r = a % 10 ;

a /= 10 ;

gruod += r * pow ( 2 , b ) ;

++ b ;

}

grąžinti gruod ;

}

Aukščiau pateiktame kode kaip pavadinimas yra sukurta visuotinė funkcija „binary-todecimal“ . Tada iš esmės deklaruojame ilgą ilgą kintamąjį kaip 'a' ir paprašykite vartotojo pridėti dvejetainį skaičių ir konvertuoti jį į dešimtainį skaičių skambinant „binary-todecimal“ funkcija su parametru a“. Viduje „binary-todecimal“ funkcijos apibrėžimas dešimtainė konversija per while kilpą.

Išvestis

Taip pat galite naudoti įmontuotą strtol() funkcija konvertuoti dvejetainius skaičius į dešimtainius C programavimo.

Toliau pateikiamas tokios funkcijos kodas:

#include

#include

tarpt pagrindinis ( ) {

char dvejetainė_styga [ ] = '1110' ;

char * ptr ;

ilgai dešimtainė_reikšmė ;

dešimtainė_reikšmė = sudužo ( dvejetainė_styga , & ptr , 2 ) ;

printf ( 'Dvejetainė eilutė' % s “ yra lygi dešimtainei reikšmei %ld. \n , dvejetainė_styga , dešimtainė_reikšmė ) ;

grąžinti 0 ;

}

Aukščiau pateiktas kodas konvertuoja dvejetainę eilutę „1110“ į lygiavertę dešimtainę reikšmę naudojant strtol() funkcija, kuri kaip argumentus paima dvejetainę eilutę, žymeklį į char žymeklį ir skaičių sistemos pagrindą. Galiausiai jis atspausdina rezultatą į konsolę naudodamas printf ().

Išvestis

Išvada

Kaip žinome, žmonės žino dešimtainius skaičius, palyginti su dvejetainiais, nes juos sunku valdyti. Dešimtainius skaitmenis lengva atlikti aritmetines operacijas, nes jie yra 10 bazėje, o jų apdorojimas yra greitesnis, palyginti su dvejetainiais skaitmenimis, todėl dvejetainiai skaičiai konvertuojami į dešimtainius. Aukščiau pateiktoje apžvalgoje paaiškintas dvejetainių skaičių konvertavimas į dešimtaines dalis naudojant C programą su vartotojo apibrėžtomis funkcijomis ir įtaisytomis strtol() funkcija.