Hoy concluimos la serie de artÃculos en la que estamos viendo como convertir un numero entero positivo en el sistema decimal ingresado por el usuario a su equivalente en el sistema binario. Desde que vimos como es la estructura del algoritmo para hacer esta conversión, ya lo hemos implementado en C, C#, Java, Python y hoy terminamos haciendolo en C++.
Al igual que en los otros lenguajes (a diferencia del C), el código se desarrolla de forma muy similar en C++, modificando más que todo la sintaxis propia de cada lenguaje. Pero bueno, vemos como es entonces el código fuente en C++:
#include <string>
#include <iostream>
using namespace std;
int main() {
cout << "Ingrese un numero entero positivo: \n";
int numero;
string binario = "";
cin >> numero;
if (numero > 0) {
while (numero > 0) {
if (numero%2 == 0) {
binario = "0"+binario;
} else {
binario = "1"+binario;
}
numero = (int) numero/2;
}
} else if (numero == 0) {
binario = "0";
} else {
binario = "No se puede realizar la conversión. Ingrese solo numeros positivos";
}
cout << "El resultado de la conversion es: " << binario;
return 0;
}
Finalmente solo nos resta probar este código, asà que compilamos y ejecutamos. Nuevamente haremos la prueba tratando de convertir el número 13 y el resultado de la conversión nos debe arrojar el número binario 1101:

Y si yo quiero ponte 50 numero done lo tendo que ponet para que guarde cada nunero y me lo muestre cada numero en binario ?
ResponderBorrarPara eso deberÃas sacar el algoritmo a otro método que reciba el número que deseas convertir (DeberÃas quitar de este nuevo método las lÃneas que capturan el valor a convertir) y retorne el valor convertido.
BorrarAsà pues, después lo que debes de hacer es crear un ciclo donde se lea desde una lista los valores que deseas convertir y los vayas guardando en otra lista.
AL final, puedes imprimir toda lista que tiene los valores convertidos