Com convertir nombres binaris en decimals en C

Com Convertir Nombres Binaris En Decimals En C



Els nombres binaris són combinacions de 0 i 1, mentre que els nombres decimals són números de base 10. A la programació en C, convertim nombres binaris en nombres decimals per millorar el rendiment del codi i facilitar-ne la comprensió per als estudiants.

Aquesta guia explicarà com convertir nombres binaris en nombres decimals en C.

Abans d'entrar en el concepte en si, anem a veure què són els nombres binaris i decimals en C.







Formats de nombres binaris i decimals en C

Els nombres binaris són nombres representats en forma d'una combinació de dos dígits 0 i 1, i s'anomenen sistema numèric de base 2. Els nombres decimals, en canvi, són números de base 10 que consisteixen en xifres que van del 0 al 9.



Com veieu amb el nom binari que significa dos, així que quan tenim números en forma de combinació de dos dígits 0 i 1, els anomenem nombres binaris. s'anomena sistema numèric de base 2.



Per què convertir nombres binaris en decimals en C

Treballar amb nombres binaris és un repte per als desenvolupadors a causa de les moltes combinacions possibles de 0 i 1. Els nombres decimals, d'altra banda, són més fàcils d'entendre i processar, el que els converteix en un mètode més ràpid i eficient per als programes C. Convertir nombres binaris en nombres decimals en C implica multiplicar tots els dígits binaris per la potència adequada de dos i sumar els resultats, que es fa mitjançant bucles.





Un algorisme simple per convertir binari a decimal en C

Aquí teniu un algorisme senzill per convertir binari a decimal en C mitjançant sis passos senzills:

  • Preneu un nombre binari com a entrada de l'usuari.
  • Inicialitzar una variable 'decimal' a 0 i una variable 'base' a 1.
  • Extraieu el dígit més a la dreta del nombre binari mitjançant l'operador mòdul (%) i afegiu el producte d'aquest dígit i la base a la variable decimal.
  • Multipliqueu la variable base per 2.
  • Traieu el dígit de l'extrem dret del nombre binari mitjançant la divisió enter (/).
  • Repetiu els passos 3-5 fins que s'hagin processat tots els dígits.
  • Mostra el valor decimal del nombre binari emmagatzemat a la variable 'decimal'.

Converteix nombres binaris a decimals en C

El següent és un codi senzill per convertir nombres binaris a decimals en programació C.



#inclou

#inclou

int principal ( ) {

llarg llarg a ;

imprimirf ( 'Inseriu un número binari:' ) ;

escanf ( '%lld' , & a ) ;

imprimirf ( '%lld en binari = %d en forma de decimal' , a , binaryToDecimal ( a ) ) ;

tornar 0 ; }

int binaryToDecimal ( llarg llarg a ) {

int des = 0 , b = 0 , r ;

mentre ( a != 0 ) {

r = a % 10 ;

a /= 10 ;

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

++ b ;

}

tornar des ;

}

Al codi anterior, es fa una funció global com a nom 'binaryToDecimal' . Aleshores, en general, declarem una variable llarga com a 'a' i demaneu a l'usuari que afegeixi un nombre binari i el converteixi en decimal trucant al 'binaryToDecimal' funció amb el paràmetre de a”. En el 'binaryToDecimal' definició de funció una conversió decimal a través del bucle while.

Sortida

També podeu utilitzar un integrat strtol() funció per convertir nombres binaris en decimals en programació C.

El següent és el codi d'aquesta funció:

#inclou

#include

int principal ( ) {

char cadena_binària [ ] = '1110' ;

char * ptr ;

llarg valor_decimal ;

valor_decimal = es va estavellar ( cadena_binària , & ptr , 2 ) ;

imprimirf ( 'cadena binària' % s ' és igual al valor decimal %ld. \n ' , cadena_binària , valor_decimal ) ;

tornar 0 ;

}

El codi anterior converteix una cadena binària “1110” al seu valor decimal equivalent utilitzant el strtol() funció, que pren la cadena binària, un punter a un punter de caràcters i la base del sistema numèric com a arguments. Finalment, imprimeix el resultat a la consola utilitzant printf().

Sortida

Conclusió

Com sabem, els humans estan familiaritzats amb els nombres decimals en comparació amb els binaris, ja que són difícils de gestionar. Els dígits decimals són fàcils de realitzar operacions aritmètiques, ja que són en base 10 i el seu processament és més ràpid en comparació amb els dígits binaris, per tant, els nombres binaris es converteixen en decimals. La visió general anterior ha explicat la conversió de nombres binaris en decimals amb el programa C amb funcions definides per l'usuari i integrades strtol() funció.