Fácil+ · conversión de base

Decimal a binario

Convierte un decimal a binario solo con % 2 y / 2. El calentamiento de entrevista más común después de Fibonacci.

Problema

Entrada: un entero n (0 ≤ n ≤ 10⁹).

Salida: la representación binaria de n, sin ceros iniciales (0 se imprime como 0).

Ejemplo:

EntradaSalida
5101
25511111111

Tu solución

Program.cs — tu solución
Entrada personalizada para "Probar mi entrada"

La corrección se ejecuta por completo en tu navegador contra pruebas ocultas. Tu código se guarda localmente mientras escribes. Ctrl+Enter corrige.

¿Atascado? Pistas

Pista 1 — las dos operaciones

n % 2 es el ÚLTIMO bit; n / 2 lo descarta. Recoge los bits y voltéalos, o antepón cada bit nuevo a un string.

Pista 2 — la trampa del cero

El bucle while (n > 0) nunca corre con n = 0, así que no imprimirías nada. Resuelve el 0 primero (se imprime como 0).

Solución (¡inténtalo primero!)
int n = int.Parse(Console.ReadLine());
if (n == 0) { Console.WriteLine("0"); return; }
string bits = "";
while (n > 0) { bits = (n % 2) + bits; n = n / 2; }
Console.WriteLine(bits);

Anteponer a un string es O(n²) con entradas enormes — el artículo string vs StringBuilder explica cuándo importa. Siguiente: Contar los primos.