Definizione ed uso di metodi su array

  1. Metodo che, dato un intero n come parametro, crea e restituisce un array di n elementi double random in [0, 1).
    Questo metodo restituisce un double[], ed avrà signature arrayRandom(int).
    Una chiamata del metodo potrebbe assumere la forma
         double[] vet;
         int dim;
         dim = .....;
         .....
         vet = arrayRandom(dim);
    
    poiché l'espressione a destra dell'operatore di assegnazione nell'ultima istruzione è il riferimento all'array creato dal metodo. Quindi all'interno del metodo sarà presente un new double[....]
  2. Metodo che, dati due interi n ed m come parametri, crea e restituisce un array di n righe ed m colonne contenente valori double random in [0,1]
  3. Metodi che stampano un array monodimensionale o bidimensionale (metodi sovraccarichi) di double
  4. Metodo che, dato un array di double, lo normalizza dividendo tutti gli elementi valori per un valore tale che la somma degli elementi sia 1.
    Ad esempio, l'array {0.3, 0.8, 0.5, 0.4} dovrà essere modificato in {0.15, 0.4, 0.25, 0.2}
  5. Metodo che, dato un array bidimensionale di double, normalizza ciascuna riga (usando il metodo definito in precedenza).
    Notare che una riga di un array bidimensionale è un array monodimensionale, cioè se m è definita come
       double[][] m = new double[10][5];
    
    allora ciascun elemento m[i] è di tipo double[], quindi la chiamata normalizza(m[3]) è corretta se il metodo normalizza è definito su un parametro formale double[]
  6. Metodo che, dato un array bidimensionale di double restituisce la posizione della riga con varianza massima. Utilizzare un metodo più semplice che calcola la varianza di un array monodimensionale
Scrivere un main che utilizza i metodi precedenti. Il main deve: