Olá pessoal.
Estou começando agora a programar em Java e queria a ajuda de vocês.
Meu problema é o seguinte, fiz um código mas infelizmente ele não aparece nada na saída, apenas fica dizendo que está rodando o código e o programa não é finalizado. Alguém poderia me ajudar?
Tente assim:
for(int x = 0; x <= 1; x++)
{
nums[x] = aleatorio.nextInt(2) + 1;
}
Observação: não precisa do do while
que está dentro do for
Eu queria gerar dois números diferentes.
Utilizei o dowhile para checar se já não foi sorteado o número.
Eu passei o código para o visualg e funcionou perfeitamente.
Tem várias formas de gerar números diferentes por exemplo uma maneira super simples:
for(int x = 0; x <= 1; x++)
{
nums[x] = aleatorio.nextInt(2) + x;
}
Se tu colocar o x
para somar com o resultado do Randon
. Não precisa então do do while
. Faça o código dessa forma e verifica se repete o valor e me fala!
Tira esse 2 ai de dentro:
for(int x = 0; x <= 1; x++)
{
nums[x] = (aleatorio.nextInt() + x);
}
ou coloque um número maior tipo 30:
for(int x = 0; x <= 1; x++)
{
nums[x] = aleatorio.nextInt(30) + x;
}
Explicação correta sobre o que acontece com a inserção de um limite na lista: Números Aleatórios em Java – A Classe java.util.Random
Outra forma essa não vai repetir:
for(int x = 1; x <= 2; x++)
{
nums[(x - 1)] = aleatorio.nextInt(2) + x;
}
Eu quero apenas números com um algarismo. se eu colocar 30 vai demorar mas uma hora vai ser sorteado o mesmo número.
Pronto:
for(int x = 1; x <= 2; x++)
{
nums[(x - 1)] = aleatorio.nextInt(7) + x;
}
Sabe dizer por que meu código não apareceu nenhuma saída?
eu passei ele para visualg(portugol) e funcionou
Sei porque você não colocou a variavel corretamente:
Perceba que se colocou nums[1]
seria o correto nums[x]