Hola a todos,
En esta nueva entrada veremos cómo sacar el número binario dado un número entero.
En esta nueva entrada veremos cómo sacar el número binario dado un número entero.
Básicamente un numero binario es una combinación de ceros ( 0 ) y unos ( 1
), que representan mediante manera exponencial números enteros. Estos números binarios
salen de una operación básica como lo es la división e invirtiendo en
resultado final, por lo cual dado un número entero cualquiera dividimos
sucesivamente hasta llegar a u número final 0 o 1. Todos estos necesitamos usar
obtener dos resultados:
- El numero entero siguiente, que se da por medio de divisiones sucesivas.
- El residuo de la división por dos del número entero.
//
public class Binario {
//para esta clase tenemos que importar la libreria para listas
//que es import java.util.ArrayList;
public static void main(String[] args) {
//Numero Entero que convertimos en binario
int numero=128;
//String en el cual almacenamos el valor binario resultante
String binario="";
//llamamos al metodo que convirte el numero en binario
binario=convertirABinario(numero);
//mostramos por consola el numero Binario resultante
System.out.println("El numero Binario es " + binario);
}
/**
* Metodo que convierte un numero entero en binario
* @param numero Numero entero correspondiente
* @return cadena de texto con el numero binario resultante
*/
public static String convertirABinario(int numero)
{
//lista donde almacenamos los valores individuales
ArrayList binarios = new ArrayList();
//variable donde almacenamos el resultado de la division
int aux=numero;
//hacemos un ciclo while para sacar todos los valores binarios
while(true)
{
//almacenamos el resultado de la operacion sea 1 o 0
binarios.add(aux%2);
//pasamos el sigiente numero
aux/=2;
if(aux<2)
{
//una vez obtenido todos los valores salimos del ciclo
binarios.add(aux);
break;
}
}
//llamamos al metodo que nos invierta la lista y obtenmos el resultado final
return invertirLista(binarios);
}
/**
* Metodo que invierte la lista para obtener el binario final
* @param lista donde se encuentra los resultados binarios
* @return con el numero binario final
*/
public static String invertirLista(ArrayList lista)
{
String invertido="";
for(int i=lista.size()-1;i>=0;i--)
{
invertido+=lista.get(i);
}
return invertido;
}
}