Mostrando entradas con la etiqueta Arreglos. Mostrar todas las entradas
Mostrando entradas con la etiqueta Arreglos. Mostrar todas las entradas

domingo, 11 de noviembre de 2012

Numeros Binarios JAVA

Hola a todos,

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:

  1. El numero entero siguiente, que se da por medio de divisiones sucesivas.
  2. El residuo de la división por dos del número entero.
Podemos ver mas del concepto en WIki
// 

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;
 }
}

viernes, 23 de septiembre de 2011

Sumar todos los elementos de un Arreglo


Hola a todos, hoy veemos como suar todos los elementos de un arreglo de tipo numerico.
Este es un pequeño ejemplo.

Supongamos que tenemos un arreglo en el cual tenemos la cantidad de productos vendidos, asi que para saber cual fue la cantidad vendida en total debemos sumar cada elemento del arreglo y el resultado final sera las ventas totales.

En el ejemplo usaremos una propieda que tienen los arreglos que es el .length.

¿Que hace el .length?-> lo que hace es decir la cantidad de elementos que tiene el arreglo a la hora que lo declaramos.

int posiciones[] = new int[50]; // en este caso creamos un arreglo de 50 posiciones
si hacemos posiciones.length; //eso  nos retornara la cantidad de elemtos o posiciones en este caso 50

Ahora para sumar solo usaremos un contador y un ciclo for.


int contador=0;
  //En esta variable vamos a ir sumando cada posicionde arreglo
  
  //en este caso arreglo es un Array que ya debemos tener previamente 

  for(int i =0;arreglo.length ;i++)
 
  contador+=arreglo[i];
   //vamos sumando el valor anterio con lo que tenga el arreglo en la posicion i
   
  }//fin del for
  
  System.out.println("La ganacia total es : "+ contador);
  //el System.out.println imprimira el resultado por consola
  
 //recuerden que esta sentecia debe ir dentro de un metodo


Bueno ese es un buen ejemplo de arreglos con ciclos for, si tienen algun programa lo puden publicar y lo realizamos entre todos........=)