// Codificado por: Beastieux
// Código para convertir de Decimal a Binario (0-255).
#include <iostream>
using namespace std;
int main() {
int D, D1, D2, D3, D4, D5, D6, D7, D8, R1, R2, R3, R4, R5, R6, R7, R8;
cout << "Ingrese un numero decimal" << endl;
cin >> D;
if (D > 255 || D < 0)
cout << "Ingrese un numero del 0 al 255" << endl;
else {
D1 = D / 2; R1 = D % 2;
D2 = D1 / 2; R2 = D1 % 2;
D3 = D2 / 2; R3 = D2 % 2;
D4 = D3 / 2; R4 = D3 % 2;
D5 = D4 / 2; R5 = D4 % 2;
D6 = D5 / 2; R6 = D5 % 2;
D7 = D6 / 2; R7 = D6 % 2;
D8 = D7 / 2; R8 = D7 % 2;
cout << R8 << R7 << R6 << R5 << R4 << R3 << R2 << R1 << endl;
}
cin.ignore();
return 0;
}
Código en C++ que permite convertir un número decimal en el rango de 0 a 255 a su representación binaria. Aquí está una descripción detallada de cómo funciona:
- El programa comienza con la inclusión de la librería iostream, que permite la entrada y salida de datos en la consola.
- Se establece el espacio de nombres std para evitar tener que usar «std::» antes de cada función de la librería estándar.
- La función
main()
es el punto de entrada del programa. - Se declaran variables para almacenar los valores del número decimal (
D
), así como variables temporales (D1
,D2
, …,R1
,R2
, …) que se usarán en el proceso de conversión. - Se muestra un mensaje en la consola pidiendo al usuario que ingrese un número decimal.
- Se lee el número ingresado por el usuario y se almacena en la variable
D
. - Se realiza una verificación para asegurarse de que el número ingresado esté en el rango válido (0 a 255). Si el número no cumple con esta condición, se muestra un mensaje de error.
- Si el número está en el rango válido, se procede a realizar la conversión a binario utilizando el método de división sucesiva por 2. Cada iteración calcula el cociente y el residuo de la división, lo que corresponde a un dígito binario en la representación final.
- Los cálculos se realizan utilizando variables temporales (
D1
,R1
,D2
,R2
, …) para almacenar los resultados intermedios. - Finalmente, se muestra en la consola el resultado binario obtenido a partir de los residuos calculados. Los residuos se muestran en orden inverso, ya que se obtienen de las divisiones sucesivas.
- La función
cin.ignore()
se utiliza para ignorar cualquier carácter pendiente en el flujo de entrada. - El programa termina retornando 0, indicando que la ejecución fue exitosa.
Pueder ir al artículo principal:
Códigos Sencillos hechos en C++
muy buen código
hola tu programa esta bien pero creo que lo ideal sería que un usuario digite cualquier número y el programa le devuelva solo la cantidad de bits que equivale ese número.
Tu programa solo acepta a cierta cantidad de números; y está bien para que los principiantes lo entiendan pero simplemente no te quedes con un rango corto explícale a la gente que si hay un método del 0 al infinito.
masca error en iostream
como hacer para que muestres el resultado por ejemplo, El número 52 se puede expresar como:
32 + 16 + 4
Por lo tanto, la respuesta es: 110100
y si el progra no calculara solo numeros del (0 al 255) sino de (0 a infinito)
como seria?
6622626
quiero un programa que tambien me de de un numero decimal a octadecimal y otro a hexadecimal xfa ayuden es un trabajo urgente
chinga tu cuchillo choki
o con algo de recursividad
bueno. pero con un bucle nos ahorramos muchas líneas