Dado un número binario como entrada, necesitamos hacer una conversión de un número binario a su número decimal equivalente.
Ejemplos:
Input : 1011 Output : 11 Input : 1111 Output : 15
Binario a decimal
La idea es retener el número decimal del número binario, entonces, toma el número binario y recorre de derecha a izquierda, tomando uno por uno el último dígito del número binario.
Elija el último dígito y multiplíquelo por la base adecuada (potencia de dos) y agréguelo a la variable final (digamos num).
Repita este proceso hasta que el número binario no sea igual a cero y luego imprima el resultado (es decir, num).
Ejemplo 1:
n = 101 (Número binario)
num = 1*(2^2) + 0*(2^1) + 1*(2^0) = 6 (resultante decimal)
Ejemplo 2:
n = 1101 (Número binario)
num =1*(2^3) + 1*(2^2) + 0*(2^1) + 1*(2^0) = 13 (resultante decimal)
Aquí extraeremos el número decimal del número binario dado.
# Take input as binary number echo "Enter Binary Number -" read n # function to convert binary to decimal number function binaryCon(){ local i=0 local num=0 # while loop while [ $n != 0 ] do digit=`expr $n % 10` num=$(( num + digit * 2**i )) n=`expr $n / 10` (( ++i )) done # print the resultant decimal number echo "Resultant Decimal Number" echo "$num" } # Function Call binaryCon
Producción:
Publicación traducida automáticamente
Artículo escrito por nitupandel001 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA