8 de abril de 2011

Generar números aleatorios en Java

Para generar números randomicos, debes incluir la libreria util en particular la clase Random:

import java.util.Random;

Después de acuerdo a lo que necesites puedes generar enteros o reales entre rangos definidos, para lo cual sigues el ejemplo presentado. (da click en ver más!)



package randomico;
 import java.util.Random;
 import javax.swing.*;
/**
 * @author RafaLizcano
 */
public class NumRandomico {
    public static void main(String[] args) {
        // TODO code application logic here
        Random randomico = new Random();
         int a, b, n, r = randomico.nextInt();
         JOptionPane.showMessageDialog(null,"Valor generado (entero)" + r);
         //un número randomico entre 0 y 19   (entre 0 y n-1)
         n= 20;
         JOptionPane.showMessageDialog(null,"Valor generado (entero entre 0 y n-1) " + randomico.nextInt(n));
         //si es entre 1 y n
         r=randomico.nextInt(n) + 1;
         JOptionPane.showMessageDialog(null,"Valor generado (entre 1 y n)" + r);
         double x = randomico.nextDouble();
         JOptionPane.showMessageDialog(null,"Valor generado (double - entre 0 y 1) " + x);
         //num Real entre 0 y n
         x=randomico.nextDouble() * n;
         JOptionPane.showMessageDialog(null,"Valor generado (double - entre 0 y n) " + x);
         //entre a y b
         a=5;
         b=30;
         r=randomico.nextInt(b) + a;
         JOptionPane.showMessageDialog(null,"Valor entero (entre a y b)" + r);
         //Real entre a y b
         x=a + randomico.nextDouble() * b;
         JOptionPane.showMessageDialog(null,"Valor generado (double - entre a y b) " + x);

    }
}


Referencia: http://www.cs.geneseo.edu/~baldwin/reference/random.html

No hay comentarios:

Publicar un comentario

En este espacio los comentarios son moderados con el fin de que si son dudas presentadas el proceder a su aclaración y también de ese modo verificar la información que se publique en el blog.

Nota: solo los miembros de este blog pueden publicar comentarios.