Enviado em 11/11/2013 - 15:49h
Galera, toh precisando fazer um programa de conversão de base..
utilizei uma case dentro de uma while, utilizando a linguagem C e a ideia que utilizei pra criar, deu certo.. quando transforme isso pra Shell.. esta dando erro na linha 11, alguém pode me ajudar a resolver isso.. vou tentar explicar.. quando o usuário digitar "1a", a resposta tem que ser "00011010". vlw..
OBS: SEM UTILIZAR BIBLIOTECA pro favor!
#! /bin/bash
echo "Digite o valor hexadecimal: "
read hexa
i=0
echo "Valor equivalente binario (BCD): "
while ${hexa [i]}:
do
case ${hexa [i]} in
0) echo "0000" ;;
1) echo "0001" ;;
2) echo "0010" ;;
3) echo "0011" ;;
4) echo "0100" ;;
5) echo "0101" ;;
6) echo "0110" ;;
7) echo "0111" ;;
8) echo "1000" ;;
9) echo "1001" ;;
A) echo "1010" ;;
B) echo "1011" ;;
C) echo "1100" ;;
D) echo "1101" ;;
E) echo "1110" ;;
F) echo "1111" ;;
a) echo "1010" ;;
b) echo "1011" ;;
c) echo "1100" ;;
d) echo "1101" ;;
e) echo "1110" ;;
f) echo "1111" ;;
*) echo "Valor hexadecimal Invalido"
esac
let i++
done
utilizei uma case dentro de uma while, utilizando a linguagem C e a ideia que utilizei pra criar, deu certo.. quando transforme isso pra Shell.. esta dando erro na linha 11, alguém pode me ajudar a resolver isso.. vou tentar explicar.. quando o usuário digitar "1a", a resposta tem que ser "00011010". vlw..
OBS: SEM UTILIZAR BIBLIOTECA pro favor!
#! /bin/bash
echo "Digite o valor hexadecimal: "
read hexa
i=0
echo "Valor equivalente binario (BCD): "
while ${hexa [i]}:
do
case ${hexa [i]} in
0) echo "0000" ;;
1) echo "0001" ;;
2) echo "0010" ;;
3) echo "0011" ;;
4) echo "0100" ;;
5) echo "0101" ;;
6) echo "0110" ;;
7) echo "0111" ;;
8) echo "1000" ;;
9) echo "1001" ;;
A) echo "1010" ;;
B) echo "1011" ;;
C) echo "1100" ;;
D) echo "1101" ;;
E) echo "1110" ;;
F) echo "1111" ;;
a) echo "1010" ;;
b) echo "1011" ;;
c) echo "1100" ;;
d) echo "1101" ;;
e) echo "1110" ;;
f) echo "1111" ;;
*) echo "Valor hexadecimal Invalido"
esac
let i++
done