Algoritmo Básico

Si tienes curiosidad por conocer explora nuestra web

Algoritmo de los números aleatorios en java

Post publicado por Admin , a las 8:16 , este tema tiene 0 comentarios


Los números aleatorios son extremadamente útiles, por ejemplo, en la generación de movimientos en un juego o como datos de prueba para programas de ordenador. Si uno se le pide que "elegir un número entre uno y cien", la tarea parece bastante simple. Pero, si usted necesita números verdaderamente aleatorios (cada número es igualmente probable!), Y si los quiere generar desde su equipo, la tarea resulta ser bastante complicado. Los matemáticos han trabajado sobre este problema, y han ideado técnicas robustas para generar números aleatorios. Sin embargo, las computadoras son deterministas (todas las acciones son predecibles - en algún nivel), y, así, la generación de números que son "aleatorios verdaderos" al azar no es posible. Sin embargo, podemos llegar a estar muy cerca de ello. Los algoritmos que generan números aleatorios, lo admito, proporcionan números "pseudoaleatorios". Pero, para la mayoría de los propósitos es lo suficientemente bueno.

La clase Math utiliza un método denominado Math.random() que devolverá un número aleatorio entre 0.0 y 1.0 (por ejemplo,7027626572195147). Para generar números aleatorios en un rango mayor, simplemente podemos multiplicar Math.random() por el límite superior del rango. Por ejemplo, para generar números aleatorios mayores que o iguales a 0 y menor que 10, la siguiente instrucción sería utilizado:

Math.random() * 10;//Devuelve un numero aleatorio entre 0.0 y 9.999999

En el siguiente código vamos a generar números aleatorios entre 1.0 y 50.999999:

Math.random() * 50 + 1;//Devuelve un numero aleatorio entre 1.0 y 50.999999

Con el fin de generar la parte entera de un número, puede simplemente usar la conversión de tipos(type casting en inglés) para convertir el número a un entero. Así que siguiendo con el ejemplo anterior, podemos generar un valor entero aleatorio entre 1 y 50 con la siguiente declaración:

(int)(Math.random() * 50 + 1);//Devuelve un numero aleatorio entre 1 y 50

Si queremos generar números enteros del 1 al 10

(int)(Math.random() * 10 + 1);//Devuelve un numero aleatorio entre 1 y 10

Si queremos generar números enteros del 0 al 9

(int)(Math.random() * 10);//Devuelve un numero aleatorio entre 0 y 9

Generación de números al azar con la clase Random

Otra forma puede generar números aleatorios es usando de la clase Random que se incluye en el paquete java.util. El objeto Random se puede crear utilizando el siguiente constructor:

Random rnd = new Random();

El objeto generador de números aleatorios puede ser utilizado para generar valores aleatorios mediante el uso de uno cualquiera de los métodos siguientes incluidos en la clase Random:

nextInt() Returns a random integer value.
nextInt(int n) Devuelve un valor entero de números aleatorios entre 0 y el valor especificado.
nextDouble() Devuelve un valor double aleatorio entre 0.0 y 1.0
nextBoolean() Devuelve un valor booleano al azar (es decir, verdadero o falso).
nextLong() Devuelve un valor long al azar.

Para generar como salida un número aleatorio entre 0 y 49, por ejemplo, usaríamos el método nextInt() como sigue:

int num = rnd.nextInt(50);//Devuelve un numero aleatorio entre 0 y 49
System.out.println(num);

Para generar como salida un número aleatorio entre 1 y 50, por otro lado, se tendría que utilizar algo que se llama un valor de cambio, que especifica el primer valor en el conjunto deseado de enteros aleatorios:

int num = rnd.nextInt(50) + 1; //Devuelve un numero aleatorio entre 1 y 50
System.out.println(num);

Nota: Si quieres conocer mas sobre los números aleatorios en java explora esta web y encontraras mas ejemplos.
Algoritmo de los números aleatorios en java
Algoritmo de los números aleatorios en java - escrito por Admin , publicado en 8:16, categorizado como Matematicos . y tiene 0 comentarios
No comment Add a comment
Copyright © 2015 Algoritmo Básico Todos los derechos reservados.
Si te gusta nuestra web, no te olvides de compartir nuestros post.

Desarrollado por Algoritmo Básico con la tecnología Blogger.