Elaborar uma função que converta um número da base 10 pra a base 2. E outra que função que converta da base 2 para base 10.
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
#include<string.h>
int contacaracter;
int basedec(char bin[50])
{
int cont=contacaracter-1;
int convertidodec=0;
int ibin[contacaracter];
for(int i=0;i<contacaracter;i++)
{
ibin[i]=bin[i];
if((ibin[i]!=0)&&(ibin[i]!=1))
{
printf("Valor binario não corresponde ao esperado.\n");
return 0;
}
else
{
convertidodec=convertidodec+ibin[i]*pow(2,cont);
cont--;
}
}
return convertidodec;
}
char basebin(int dec)
{
int cont=0;
int quoc=dec;
int quoc2=dec;
for(;;)
{
quoc=quoc/2;
if(quoc==1)
break;
else
cont++;
}
char convertidobin[cont];
int resto[cont];
for(int i=0;i<cont;i++)
{
resto[i]=quoc2%2;
quoc2=quoc2/2;
}
int a=0;
for(int i=cont;i>=0;i--)
{
convertidobin[a]=resto[i];
a++;
}
return convertidobin[cont];
}
int main()
{
int dec;
char bin[50];
printf("Digite um valor binario e um valor decimal.\n");
scanf("%s%i",&bin,&dec);
contacaracter=strlen(bin);
printf("Conversao do numero binario %s para decimal = %i\n",bin,basedec(bin[50]));
printf("Conversao do numero decimal %i para binario = %s\n",dec,basebin(dec));
system("pause");
return 0;
}
//tentei fazer desse jeito mas não dar ceto alguém pode me ajudar...?
Pergunta
joaozinho
Elaborar uma função que converta um número da base 10 pra a base 2. E outra que função que converta da base 2 para base 10.
//tentei fazer desse jeito mas não dar ceto alguém pode me ajudar...?
Editado por joaozinhoLink para o comentário
Compartilhar em outros sites
1 resposta 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.