Por favor gostaria de saber se existe uma maneira de pré determina o valor do Math.random
???
Ex: Math.random
entre 0.10 e 0.15.
Use a classe random que é melhor que o Math.random
PS: Os valores 0.10 à 0.15 pode ser um valor de 1 a 5 somado a 10 dividido por 100
Random rdm = new Random();
int proximoNumero = rdm.nextInt(5);//Limitamos o resultado até 5
double numero = (proximoNumero + 10)/100;
System.out.println(numero);
POG brabo
Random r = new Random(System.currentTimeMillis());
System.out.println(new DecimalFormat("0.00").format(r.nextInt(6)/100d + 0.10d));
O nextInt(int) tem que ser até 6 porque é exclusivo (0 até 5)
:twisted:
Siga a dica do Mark. Só cuidado com as contas envolvendo inteiros. O ideal é fazer assim:
Random rdm = new Random();
//Troque a variável para double
double proximoNumero = rdm.nextInt(5);//Limitamos o resultado até 5
//Senão essa linha sempre retornará 0, já que fará divisão de inteiros.
double numero = (proximoNumero + 10)/100;
System.out.println(numero);
viugii…
E oq q houve com o velho
int x = (int) (Math.random() * 10)
??
[quote=uchoaaa]viugii…
E oq q houve com o velho [/quote]
Ele gera péssimos resultados. Especialmente no número extremo, como o 10.
É o que acontece quando vc trunca (a única chance de dar 10 é o random dar 1. Se der 0,9 0,8, 0,7, 0.71, 0.72, o resultado é 9, meio injusto com o 10, não acha?)
[quote=ViniGodoy]
Ele gera péssimos resultados. Especialmente no número extremo, como o 10.
É o que acontece quando vc trunca (a única chance de dar 10 é o random dar 1. Se der 0,9 0,8, 0,7, 0.71, 0.72, o resultado é 9, meio injusto com o 10, não acha?)[/quote]
hmmm, faz sentido…
E fora o Casting evitado, né?!
Tá bom, tá bom, é mais elegante, coitado do meu POG!
Mas o nextInt(number) tem que ser com 6 pra pegar o 5!
Mas meu professor quer que eu use o bendito Math.random
Eu fiz de uma maneira só que ele nem sempre gera numeros entre 10 e 15 que foi o valor estimado!!!
[code]
public class Bovinos {
public static void main (String [] args) {
int [] vetor = new int [20];
for (int i=0; i<vetor.length; i++)
vetor[i] = (int)(Math.random()*300/15);
for (int aux: vetor)
System.out.println(aux);
}
}[/code]
[code]public class Bovino {
public static void main (String [] args) {
int [] vetor = new int [20];
for (int i=0; i<vetor.length; i++)
vetor[i] = (int)(Math.random()*10 %6 + 10);
for (int aux: vetor)
System.out.println(aux);
}
} [/code]
Faz isso que o random entre 10-15 funciona direito.
Aproveita e pede para ele ler o item 30, do capítulo 7 do Effective Java, chamado “Know and use the libraries”.
Entre os exemplos, está especificamente o random.
Muito obrigado pela ajuda de todos!!!
E aproveitando gostaria de saber se alguêm sabe o porquê na minha casa os programas compilam e rodam normalmente (Tenho o JSE 1.6 e o Jcreator) e aqui no serviço compilo pelo http://www.innovation.ch/java/java_compile.html e tenho instalado o JRE porém o erro está na hora de compilar???
Não está esquecendo de escolher a versão do JDK?
Aproveita e pede para ele ler o item 30, do capítulo 7 do Effective Java, chamado “Know and use the libraries”.
Entre os exemplos, está especificamente o random.[/quote]
Massa Vini!! :lol: :lol:
Quanto tempo hein, nem te vejo no MSN mais… vida puxada :lol:
abraço;