Cómo convertir números binarios en decimales en C

Como Convertir Numeros Binarios En Decimales En C



Los números binarios son combinaciones de 0 y 1, mientras que los números decimales son números de base 10. En la programación C, convertimos números binarios en números decimales para mejorar el rendimiento del código y hacerlo más fácil de entender para los alumnos.

Esta guía repasará cómo convertir números binarios a números decimales en C.

Antes de entrar en el concepto en sí, veamos qué son los números binarios y decimales en C.







Formatos de números binarios y decimales en C

Los números binarios son números representados en forma de una combinación de dos dígitos 0 y 1, y se les conoce como el sistema numérico de base 2. Los números decimales, por otro lado, son números de base 10 que consisten en dígitos que van del 0 al 9.



Como puede ver por el nombre binario que significa dos, cuando tenemos números en forma de una combinación de dos dígitos 0 y 1, los llamamos números binarios. se le conoce como el sistema numérico de base 2.



¿Por qué convertir números binarios en decimales en C?

Trabajar con números binarios es un desafío para los desarrolladores debido a las muchas combinaciones posibles de 0 y 1. Los números decimales, por otro lado, son más fáciles de entender y procesar, lo que los convierte en un método más rápido y eficiente para los programas C. Convertir números binarios a números decimales en C implica multiplicar todos los dígitos binarios por la potencia de dos adecuada y sumar los resultados, lo que se hace mediante bucles.





Un algoritmo simple para convertir binario a decimal en C

Aquí hay un algoritmo simple para convertir binario a decimal en C usando seis pasos simples:

  • Tome un número binario como entrada del usuario.
  • Inicialice una variable 'decimal' a 0 y una variable 'base' a 1.
  • Extraiga el dígito más a la derecha del número binario usando el operador de módulo (%), y agregue el producto de este dígito y la base a la variable decimal.
  • Multiplica la variable base por 2.
  • Elimina el dígito más a la derecha del número binario usando la división de enteros (/).
  • Repita los pasos 3 a 5 hasta que se hayan procesado todos los dígitos.
  • Muestra el valor decimal del número binario almacenado en la variable 'decimal'.

Convertir Números Binarios a Decimales en C

El siguiente es un código simple para convertir números binarios a decimales en programación C.



#incluir

#incluir

En t principal ( ) {

  largo largo a ;

imprimir ( 'Inserte un número binario: ' ) ;

escanear ( '%lld' , & a ) ;

imprimir ( '%lld en binario = %d en forma de decimal' , a , binario a decimal ( a ) ) ;

  devolver 0 ; }

  En t binario a decimal ( largo largo a ) {

  En t dic = 0 , b = 0 , r ;

  mientras ( a != 0 ) {

r = a % 10 ;

a /= 10 ;

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

  ++ b ;

  }

  devolver dic ;

}

En el código anterior, se crea una función global con el nombre “binarioADecimal” . Luego, en general, declaramos una variable larga larga como 'a' y pídale al usuario que agregue un número binario y lo convierta en un decimal llamando al “binarioADecimal” función con parámetro de a”. En el “binarioADecimal” definición de función una conversión decimal a través del ciclo while.

Producción

También puede utilizar un integrado strtol() Función para convertir números binarios en decimales en programación C.

El siguiente es el código para tal función:

#incluir

#incluir

En t principal ( ) {

  carbonizarse cadena_binaria [ ] = '1110' ;

  carbonizarse * ptr ;

  largo valor_decimal ;

valor_decimal = se estrelló ( cadena_binaria , & ptr , 2 ) ;

imprimir ( 'Cadena binaria' % s ' es igual al valor decimal %ld. \norte ' , cadena_binaria , valor_decimal ) ;

  devolver 0 ;

}

El código anterior convierte una cadena binaria “1110” en su valor decimal equivalente usando el strtol() función, que toma la cadena binaria, un puntero a un puntero char y la base del sistema numérico como argumentos. Finalmente, imprime el resultado en la consola usando imprimirf().

Producción

Conclusión

Como sabemos, los humanos están familiarizados con los números decimales en comparación con los binarios, ya que son difíciles de manejar. Los dígitos decimales son fáciles de realizar operaciones aritméticas ya que están en base 10 y su procesamiento es más rápido en comparación con los dígitos binarios, por lo tanto, los números binarios se convierten en decimales. La descripción general anterior ha explicado la conversión de números binarios en decimales con el programa C con funciones definidas por el usuario y funciones integradas. strtol() función.