Kā konvertēt bināros skaitļus decimāldaļās C

Ka Konvertet Binaros Skaitlus Decimaldalas C



Binārie skaitļi ir 0 un 1 kombinācijas, savukārt decimālskaitļi ir 10 bāzes skaitļi. Programmēšanā C mēs pārvēršam bināros skaitļus par decimālskaitļiem, lai uzlabotu koda veiktspēju un padarītu to vieglāk saprotamu skolēniem.

Šajās vadlīnijās tiks apskatīts, kā bināros skaitļus pārveidot par decimālskaitļiem valodā C.

Pirms ķeramies pie paša jēdziena, apskatīsim, kas ir binārie un decimālskaitļi valodā C.







Bināro un decimālo skaitļu formāti C

Binārie skaitļi ir skaitļi, kas attēloti divu ciparu 0 un 1 kombinācijas veidā, un tos dēvē par 2. bāzes ciparu sistēmu. No otras puses, decimālskaitļi ir 10 bāzes skaitļi, kas sastāv no cipariem no 0 līdz 9.



Kā redzat no nosaukuma binārs, kas nozīmē divi, tāpēc, ja mums ir skaitļi divu ciparu 0 un 1 kombinācijas formā, mēs tos saucam par bināriem skaitļiem. to dēvē par 2. bāzes ciparu sistēmu.



Kāpēc konvertēt bināros skaitļus decimāldaļās C

Darbs ar binārajiem skaitļiem ir sarežģīts izstrādātājiem, jo ​​ir daudz iespējamo 0 un 1 kombināciju. No otras puses, decimālskaitļi ir vieglāk saprotami un apstrādājami, padarot tos par ātrāku un efektīvāku metodi C programmām. Bināro skaitļu pārvēršana decimālskaitļos C nozīmē visu bināro ciparu reizināšanu ar atbilstošu divu pakāpju un rezultātu saskaitīšanu, ko veic, izmantojot cilpas.





Vienkāršs algoritms, lai pārveidotu bināros par decimālskaitļiem C

Šeit ir vienkāršs algoritms, lai pārveidotu bināro vērtību decimāldaļās C, izmantojot sešas vienkāršas darbības:

  • Ņemiet bināro skaitli kā ievadi no lietotāja.
  • Inicializējiet mainīgo “decimal” uz 0 un mainīgo “bāze” uz 1.
  • Izņemiet binārā skaitļa galējo labo ciparu, izmantojot moduļa operatoru (%), un pievienojiet šī cipara un bāzes reizinājumu decimālajam mainīgajam.
  • Reiziniet bāzes mainīgo ar 2.
  • Noņemiet galējo labo ciparu no binārā skaitļa, izmantojot veselu skaitļu dalījumu (/).
  • Atkārtojiet 3.–5. darbību, līdz visi cipari ir apstrādāti.
  • Parādiet mainīgajā decimāldaļā saglabātā binārā skaitļa decimālo vērtību.

Konvertējiet bināros skaitļus decimāldaļās valodā C

Tālāk ir sniegts vienkāršs kods bināro skaitļu konvertēšanai decimāldaļās C programmā.



#include

#include

starpt galvenais ( ) {

garš garš a ;

printf ( 'Lūdzu, ievietojiet bināro numuru:' ) ;

scanf ( '%lld' , & a ) ;

printf ( '%lld binārā veidā = %d decimālskaitļa formā' , a , binaryToDecimal ( a ) ) ;

atgriezties 0 ; }

starpt binaryToDecimal ( garš garš a ) {

starpt dec = 0 , b = 0 , r ;

kamēr ( a != 0 ) {

r = a % 10 ;

a /= 10 ;

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

++ b ;

}

atgriezties dec ;

}

Iepriekš minētajā kodā kā nosaukums ir izveidota globāla funkcija “binarytodecimal” . Tad galvenokārt mēs deklarējam garu garo mainīgo kā 'a' un lūdziet lietotājam pievienot bināro skaitli un pārvērst to decimāldaļā, zvanot uz “binarytodecimal” funkcija ar parametru a”. Iekš “binarytodecimal” funkcijas definīcija decimāldaļas konversija, izmantojot while cilpu.

Izvade

Varat arī izmantot iebūvēto strtol() funkcija, lai bināros skaitļus pārvērstu decimāldaļās C programmēšanā.

Tālāk ir norādīts šādas funkcijas kods:

#include

#include

starpt galvenais ( ) {

char binārā_virkne [ ] = '1110' ;

char * ptr ;

garš decimālvērtība ;

decimālvērtība = avarēja ( binārā_virkne , & ptr , 2 ) ;

printf ( 'Binārā virkne' % s ' ir vienāds ar decimālvērtību %ld. \n ' , binārā_virkne , decimālvērtība ) ;

atgriezties 0 ;

}

Iepriekš minētais kods pārvērš bināro virkni '1110' ekvivalentā decimālvērtībā, izmantojot strtol() funkcija, kas kā argumentus izmanto bināro virkni, rādītāju uz rakstzīmju rādītāju un skaitļu sistēmas bāzi. Visbeidzot, tas izdrukā rezultātu konsolei, izmantojot printf ().

Izvade

Secinājums

Kā mēs zinām, cilvēki zina decimālskaitļus, salīdzinot ar binārajiem skaitļiem, jo ​​tos ir grūti pārvaldīt. Decimālskaitļi ir viegli izpildāmi aritmētiskās darbības, jo tie atrodas 10. bāzē, un to apstrāde ir ātrāka, salīdzinot ar binārajiem cipariem, tāpēc binārie skaitļi tiek pārvērsti decimāldaļās. Iepriekš sniegtajā pārskatā ir izskaidrota bināro skaitļu pārvēršana decimāldaļās ar C programmu ar lietotāja definētām funkcijām un iebūvētu strtol() funkciju.