Vc precisa guardar os dados em alguma estrutura de dados ? Vetor ?
Se não precisar armazenar, basta ler quinhentos numero e aí sim guarda-los.
Precisa ser vetor estático de 500 posições?
Se não, use alguma estrutura do próprio java.
Qualquer coisa volte a perguntar.
B
bomba544
intnumero[]=newint[500];intmaior=0;for(inti=0;i<numero.length;i++){Randomrandom=newRandom();numero<i>=random.nextInt(500);if(numero<i>>100){maior++;System.out.println(numero<i>+"-"+i);}}System.out.println("Quantidade de números maiores: "+maior);
Acho que dá pra entender uasahusuasu. Fiz isso quase dormindo aqui, qualquer equivoco, me corrijam. PS: são 03:28 da manhã AUSHUAS
carlosmoreira
// Como vc está começando vamos usar o métod Jackpublicstaticvoidmain(String[]args){// Evite comentários no seu código, pra isso dê nomes que auto expliquem oque elas fazem ou pra que elas servem// Veja no meu exemplo que as variáveis se explicam por si só// Essa variável não é necessária aqui, ele pode ser declarada junto do for como vc pode ver na correção que fizinti;int[]vetor=newint[500];intnumero=0;// Pelo que entendi do seu problema vc não precisa armazenar os números que são maiores que 500, só dizer quantos são// Então essa variável é desnecessariaint[]maior=newint[500];// só declare dentro da iteração oque vc realmente vai usar, vc está declarando 500x a variável sorteio, quando só pracisa de 1for(i=0;i<500;i++){Randomsorteio=newRandom();// use alguma IDE, eclipse ou netbeans, elas vão evitar os erros de compilação// aqui vc está tentando atribuir um int há um array, erro de compilação, o correto seria vetor[i] = sorteio.nextInt(500);// esta função de Random retorna um pseudorandom entre 0 (inclusive) e o número passado (exclusive) então aqui vc nunca veria o 500, pra isso// vc deve passar o número limite que quer +1, neste caso 501vetor=sorteio.nextInt(500);}while(numero<vetor.length){numero++;// Erro de compilação, vetores não podem ser usados com o comparador >if(vetor>100){maior=vetor;}}// ????JOptionPane.showMessageDialog(null,Arrays.toString(maior));/** * Se vc quer mesmo aprender a programar estude as respostas que te foram dadas, não apenas copie * Indente seu código, isso facilita o entendimento, tanto o seu quanto o de outros * Denovo, use uma IDE, ela tem várias funcionalidades que aumentam a produtividade. */}
Segue uma possível correçao.
publicstaticvoidmain(String[]args){Randomsorteio=newRandom();int[]numerosIniciais=newint[500];intquantosSaoMaioresQue100=0;for(inti=0;i<numerosIniciais.length;i++){numerosIniciais[i]=sorteio.nextInt(501);}for(intnumero:numerosIniciais){if(numero>100)quantosSaoMaioresQue100++;}System.out.println("Temos "+quantosSaoMaioresQue100+" maiores que 100 nesta lista");}
Finalmente, vc deve separar seu código em métodos que fazem apenas uma coisa, veja.
Assim eu posso reusá-lo sem reescrever o código
publicstaticvoidmain(String[]args){int[]numerosIniciais=inicializaListaComNumerosRandomicos(500);intquantosSaoMaioresQue100=contaQuantosNumerosSaoMaioresQueOLimite(numerosIniciais,100);intquantosSaoMaioresQue200=contaQuantosNumerosSaoMaioresQueOLimite(numerosIniciais,200);System.out.println("Temos "+quantosSaoMaioresQue100+" maiores que 100 ");System.out.print(" e "+quantosSaoMaioresQue200+" maiores que 200 nesta lista");}privatestaticintcontaQuantosNumerosSaoMaioresQueOLimite(int[]numeros,intlimite){intcontagem=0;for(intnumero:numeros){if(numero>limite)contagem++;}returncontagem;}privatestaticint[]inicializaListaComNumerosRandomicos(inttamanhoDaLista){Randomsorteio=newRandom();int[]lista=newint[tamanhoDaLista];for(inti=0;i<lista.length;i++){lista[i]=sorteio.nextInt(tamanhoDaLista+1);}returnlista;}