ayuda random

leo
27 de Marzo del 2008
Hola buen dia:

Tengo el siguiente codigo

import javax.swing.*;
public class NumerosAzar {
public static void main(String args[]){
int valor = 2;
String sali="";
for(int n=2;n<=10;n+=2){
valor=1+(int) (Math.random() * 6);

}
sali+=valor +" ";
JOptionPane.showMessageDialog(null, sali);
}
}

Se supone que debe devolver un solo numero al azar de la serie:2,4,6,8,10 pero me esta arrojando numeros impares. Que puedo estar haciendo mal? agradezo la ayuda. GRACIAS

Lean
27 de Marzo del 2008
Será porque le estás sumando 1 a cada random que se genera....

ozito
27 de Marzo del 2008
Leo,
Creo que tienes un error de concepto, el programa que has diseñado sólo te devolverá números aleatorios entre 1 y 6, da igual que sean pares o impares, porque el bucle for no vale para nada. Por favor lee los comentarios del siguiente código que hace lo que tu quieres:

import javax.swing.*;

public class NumerosAzar {
public static void main(String args[]){
int valor = 2;
String sali="- ";
// devuelve un número aleatorio entre 1 y 5 y lo
// multiplica por 2 para mostrar los numeros pares
// del 2 al 10
valor=(1+(int) (Math.random() * 5)) *2;
sali+=valor +" -";
JOptionPane.showMessageDialog(null, sali);
}
}