Salve a tutti, devo creare un programma che faccia immettere all'utente un numero n e che generi n numeri random (compresi tra 0 e 500), calcolandone poi la media e il valore massimo. Il problema che riscontro è nel calcolo del valore massimo. Non ho mai usato un array, l'ho scoperto solo oggi cercando in rete soluzioni al mio problema. Il mio codice è questo (manca la parte relativa al calcolo del max):
codice:
import java.util.Random;
import java.util.Scanner;
public class NumeriRandom {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in = new Scanner(System.in);
System.out.println("Inserisci un numero <=100: ");
int n = in.nextInt();
int somma = 0;
int arrayNumeri[];
if (n<=100)
{Random random = new Random();
for(int i = 0; i < n; i++)
{
int k = random.nextInt(500);
System.out.println(k);
somma = somma + k;
}
//media
double media = somma/n;
System.out.println("Media dei numeri random: "+ media);
//Massimo (da fare)
}
else System.out.println ("Numero non corretto: riprova");
}
}
Per il valore massimo volevo usare :
codice:
int[] arrayNumeri = new int[n];
int max=arrayNumeri[0];
for(int i=0; i<=arrayNumeri.length-1; i++) {
if( arrayNumeri[i]<max ) {
max=arrayNumeri[i];
}
}
System.out.println ("Il valore massimo dell'array è : "+max);
Però per fare questo ho pensato che dovessi immagazzinare man mano i vari numeri random all'intero dell'array..avendo arrayNumeri = {k1,k2,k3.....ecc}.. e quindi ho provato con questo all'interno del ciclo for (P.s. l'array ovviamente l'ho inizializzato prima):
codice:
arrayNumeri = new int[n];
arrayNumeri[i] = k;
Chi potrebbe aiutarmi? Grazie!