Boa tarde, eu estou tendo problemas com um exercicio.
O exercicio pede o seguinte:
Faça um programa em C++ para ler um número binario maior que zero, converter este número
para hexadecimal, usando pilha e apresentar na tela, o resultado da conversão.
Usando isso para iniciar a pilha
#include <iostream>
#include "pilha_vetor.h"
int main()
{
int bin;
PILHA p;
cout<<"Insira valor Binario";
cin>>bin;
iniciaPilha (p);
}
E isso para a conversão:
public static int BinarioDec(String valorBinario)
{
int valor = 0;
for (int i=valorBinario.length(); i>0; i--)
{
valor += Integer.parseInt(valorBinario.charAt(i-1)+"")*Math.pow(2, (valorBinario.length()-i));
}
return valor;
}
public static String BinarioHexa(String binario)
{
char[] hexa = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f'};
StringBuilder sb = new StringBuilder();
int posInicial = 0;
int posFinal = 0;
char charEncontrado = '-';
posInicial = binario.length();
posFinal = posInicial;
while (posicaoInicial > 0)
{
posInicial = ((posInicial - 4) >= 0) ? posInicial - 4 : 0;
charEncontrado = hexa[BinarioDec(binario.substring(posInicial, posFinal))];
sb.insert(0, charEncontrado);
posFinal = posInicial;
}
return sb.toString();
}
Eu estou tendo dificuldades em fazer esse procedimento utilizando a pilha. Eu pesquisei a respeito e aprendi a fazer a conversão Binário para Hexadecimal, mas não estou conseguindo colocar em código. Acredito que aquele método de conversão que eu estudei de outra fonte funciona como esperado, mas a parte do exercicio que solicita que o procedimento seja feito e demonstrado dentro de uma pilha que esta me dando dor de cabeça. Agradeço pela ajuda. Caso seja de algum valor, segue a biblioteca de pilhas que estou utilizando: http://notepad.cc/share/HO9M15VgRu
Se alguém tiver uma ideia melhor para formatar esse código alem da solução do meu problema, por favor compartilhe.
Pergunta
NaoSou
Boa tarde, eu estou tendo problemas com um exercicio.
O exercicio pede o seguinte:
Faça um programa em C++ para ler um número binario maior que zero, converter este número
para hexadecimal, usando pilha e apresentar na tela, o resultado da conversão.
Usando isso para iniciar a pilha
E isso para a conversão:
Eu estou tendo dificuldades em fazer esse procedimento utilizando a pilha. Eu pesquisei a respeito e aprendi a fazer a conversão Binário para Hexadecimal, mas não estou conseguindo colocar em código. Acredito que aquele método de conversão que eu estudei de outra fonte funciona como esperado, mas a parte do exercicio que solicita que o procedimento seja feito e demonstrado dentro de uma pilha que esta me dando dor de cabeça.
Agradeço pela ajuda.
Caso seja de algum valor, segue a biblioteca de pilhas que estou utilizando: http://notepad.cc/share/HO9M15VgRu
Se alguém tiver uma ideia melhor para formatar esse código alem da solução do meu problema, por favor compartilhe.
Editado por NaoSouLink para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.