enero 31, 2012

Epsilon

En esta ocasión dejo el aporte del Epsilon que se ocupa en la materia de Métodos Numéricos, en si solo evalua la capacidad de tu maquina espero que les sirva, sin mas que decir aquí esta el código.

/**
 * Archivo: Epsilon.java
 */
public class Epsilon 
{
 public static void main(String[] args) 
 {
  double epsilon = 1;
  while(epsilon + 1 > 1)
  {
   epsilon = epsilon/2;
  }
  epsilon = epsilon *2;
  System.out.println(epsilon);
 
 }
}

El programa no lo realice yo, un compañero me paso el programa espero que les sirva.

enero 24, 2012

Scanner parte 2

Bueno después de leer el comentario, me di a la tarea de leer un poco y pues esto fue lo que me pareció los mas apegado a lo que pides, utilizando el método useDelimiter(), bueno chequen el código (explicación al final).

/**
* Archivo: CaracterPorCaracterScanner.java
* @author Bello Cerecero
* @version 1.0
* @since 24/01/2012
*/
import java.util.Scanner;
public class CaracterPorCaracterScanner
{
  public static void main(String[] args)
  {
    Scanner entrada = new Scanner(System.in);
    entrada.useDelimiter(",");
 
    System.out.println("Escribe un nombre");
    System.out.println(entrada.next());
  }
}


Empezamos en la linea 12 vemos que creamos un objeto de la clase Scanner, en la linea 13 utilizamos el método useDelimiter(), esto significa que al leer la entrada solo leerá hasta donde aparezca el delimitador en este caso es una ",".
la salida del programa es la siguiente:

Utilizar Scanner

En esta ocasión hablare sobre la utilización del Scanner, esto nos sirve para poder pedirle al usuario que introduzca datos que le pedimos pero estos serán introducidos por medio de la consola, para hacer un poco mas claro esto hice este pequeño programa que muestra como utilizar el Scanner, échenle un vistazo (al final esta la explicación del código).

/**
* Archivo: EntradaTeclado.java
* @author Bello Cerecero
* @version 1.0
* @since 23/01/2012
*/
import java.util.Scanner;
public class EntradaTeclado
{
  public static void main(String[] args)
  {
    Scanner entrada = new Scanner(System.in);
    String nombre;
    int numero;
    double numeroDecimal;

    System.out.println("Introduce un nombre: ");
    nombre = entrada.next();

    System.out.println("Introduce un numero entero: ");
    numero = entrada.nextInt();

    System.out.println("Introduce un numero decimal: ");
    numeroDecimal = entrada.nextDouble();

    System.out.println("El nombres es: " + nombre);
    System.out.println("El entero es: " + numero);
    System.out.println("El numero decimal es: " + numeroDecimal);
  }
}


Empecemos en la linea 7 aquí importamos la librería para poder utilizar el Sacnner, después en la linea 12 declaramos e inicializamos el objeto de tipo Sacnner al que llamaremos "entrada", de las lineas 13 a la 15 declaramos variables que utilizaremos para guardar los datos que sean introducidos por el usuario, como había dicho que el Scanner utiliza la consola para poder pedir datos al usuario debemos imprimir, para estos utilizaremos "System.out.println()" así el usuario podrá leer lo que le pedimos y ahí mismo el introducirá el dato requerido.
Entonces el la linea 17 utilizamos un "System.out.println()" donde pondremos lo que queremos que introduzca el usuario, en este caso yo puse que coloque un nombre, como un nombre es de tipo String vemos que en la linea 18 a la variable "nombre" (que es de tipo String) se le asigna lo que tenga "entrada.next()" ahora "entrada" es el objeto de tipo Scanner y "next()" es un método para leer datos tipo String. lo mismo pasa en la linea 20 y 21 solo que en la linea 20 imprimo en consola que introduzca un numero entero como pueden ver en la linea 21 pasa algo similar a lo que ocurre en la linea 18, solo que en la linea 21 utilizamos la variable "numero" (que es de tipo int) para asignarle lo que tenga "entrada.nextInt()" como pueden darse cuenta que para cada tipo de dato que se requiere el método "next()" se va modificando, en este caso para poder leer un numero entero es "nextInt()" para el caso siguiente en el que se desea leer un numero decimal (lineas 26 y 27) seria "nextDouble()".

En la siguiente figura se muestra como queda en consola después de haber ejecutado el programa (lo que se encuentra en tono verde, son los datos que el usuario introdujo).

enero 17, 2012

Arreglo 2x2 (Básico)

En esta ocasion veremos un poco de como funcionan los arreglos de dos dimensiones, en este caso para ejemplificar utilizare un arreglo de 2x2 el arreglo (en este caso seria ya una matriz) queda de la siguiente manera:

de esta forma como se puede observar, existen 4 espacios y para poner llenar la matriz se forman 4 diferentes combinaciones de indices, seria 00,01,10 y 11. Bueno vallamos al código para aclarar esto.

/**
* Archivo: ArregloBidimensional.java
* @author Bello Cerecero
* @version 1.0
* @since 14/01/2012
*/
public class ArregloBidimensional
{
public static void main(String[] args)
{
  //inicializamos el arreglo.
  int arreglo[][] = new int [2][2];
  
  //introducimos valores.
  arreglo[0][0] = 5;
  arreglo[0][1] = 10;
  arreglo[1][0] = 15;
  arreglo[1][1] = 20;
  
  //imprimimos.
  System.out.println(arreglo[0][0]);
  System.out.println(arreglo[0][1]);
  System.out.println(arreglo[1][0]);
  System.out.println(arreglo[1][1]);
}
}

En la linea 12 inicializamos el arreglo, como pueden ver es casi lo mismo que inicializar un arreglo de una sola dimensión solo que para el de dos dimensiones utilizamos dos pares de corchetes [][], al escribir "int arreglo[][]" estamos diciendo que que sera de tipo entero se llamara arreglo y sera de dos dimensiones, al escribir "new int [2][2]" estamos diciendo que creemos el arreglo de de 2x2.
De la linea 15 a la 18 estamos introduciendo enteros al arreglo como vemos indicamos el indice en el que queremos que se introduzca cada entero, en la posición 00 se encontrara el valor 5, en la posición 01 se encontrara el valor 10, etc. (si no necesitamos llenar por completo el arreglo pueden quedar espacios libres).
De la linea 21 a la 24 imprimimos el contenido del arreglo como vemos lo unico que tenemos que hacer es especificar que posición queremos imprimir en este caso imprimí todas las posiciones.(si en un dado caso la posición que queramos imprimir se encontrara vacía lo que se imprimiría seria "null").
Eso es todo por hoy espero que les sea de utilidad, este solo fue una pequeña introducción próximamente hablare de los arreglos de dos dimensiones mas ampliamente.