[Codigo] Binario a Decimal

Iniciado por Mario Olivera, 18 Mayo 2015, 18:18 PM

0 Miembros y 1 Visitante están viendo este tema.

Mario Olivera

 Les dejo un código que hice, pasa un binario a decimal  :D

Saludos!

Código (cpp) [Seleccionar]
#include <iostream>
using std::cin;
using std::endl;
using std::cout;

#include <cmath>
using std::pow;

int main()
{
long int binario;
long int decimal=0;
long int auxBinario;
int resto;
bool respuesta= true;


cout <<"Binario: ";
cin  >> binario;

auxBinario= binario;

for (int contador=0; pow(10.,contador) < binario; contador++)
{
resto= auxBinario % 10;
auxBinario/= 10;

switch (resto)
{
case 0:
decimal+= (resto * pow(2.0,contador));
break;

case 1:
decimal+= (resto * pow(2.0,contador));
break;

default:
respuesta= false;
break;
}

}

if (respuesta == true)
{
cout <<"\nEl binario " <<binario <<" es " <<decimal <<endl;
}
else
{
cout <<"\nEl numero ingresado no es un binario!\n";
}
cin.get();
cin.get();
return 0;
}

engel lex

Creo que allí podrías hacer el código mucho mas eficiente ahí...

Una de las cosas buenas es cambiar for por while((contador=contador/10)!=0)
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.