Por favor, activa JavaScript y desactiva tu adblock para este sitio

El Javatar

Blog dedicado a la Programación en Java, C, PHP, Phyton, HTML, SQL y Mucho Más

martes, 15 de abril de 2014

Como Convertir un Numero Decimal a Binario en C++

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:

Como Convertir un Numero Decimal a Binario en C++

2 comentarios:

  1. 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 ?

    ResponderBorrar
    Respuestas
    1. Para 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.

      Así 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

      Borrar