package lezione10; import java.util.Random; public class MatriceDoubleEx implements InterfacciaMatriceDoubleEx { // MAGIA NERA: ignorate 'implements InterfacciaMatriceDouble' private double[][] matrice; public MatriceDoubleEx(int nRighe, int nColonne) { this.matrice = new double[nRighe][nColonne]; } @Override // MAGIA NERA: ignorate '@Override' public void riempiACaso(double maxVal) { Random rand = new Random(); // MAGIA NERA: creiamo un generatore di numeri casuali for (int i = 0; i < this.matrice.length; i++) { for (int j = 0; j < this.matrice[0].length; j++) { this.matrice[i][j] = rand.nextDouble() * maxVal; // MAGIA NERA: otteniamo un intero casuale tra 0 e maxVal-1 (inclusi) } } } @Override public double[][] asArray() { return this.matrice; } @Override public void visualizza() { for (int i = 0; i < this.matrice.length; i++) { for (int j = 0; j < this.matrice[0].length; j++) { /* * MAGIA meno nera: facciamo in modo che vengano sempre stampate 2 cifre * - %d = stampa un numero * - 02 = aggiungi degli 0 a sinistra del numero finchè esso non ha 2 cifre */ System.out.printf("%02.2f ", this.matrice[i][j]); } System.out.println(); } System.out.println("----------"); } @Override public double leggiCella(int iRiga, int iColonna) { // TODO Auto-generated method stub return 0; } @Override public void scriviCella(int iRiga, int iColonna, double valore) { // TODO Auto-generated method stub } @Override public double[] leggiRiga(int iRiga) { // TODO Auto-generated method stub return null; } @Override public void scriviRiga(int iRiga, double[] riga) { // TODO Auto-generated method stub } @Override public double[] leggiColonna(int iColonna) { // TODO Auto-generated method stub return null; } @Override public void scriviColonna(int iColonna, double[] colonna) { // TODO Auto-generated method stub } @Override public int numRighe() { // TODO Auto-generated method stub return 0; } @Override public int numColonne() { // TODO Auto-generated method stub return 0; } @Override public int numCelle() { // TODO Auto-generated method stub return 0; } @Override public double prossimaCellaPerRighe() { // TODO Auto-generated method stub return 0; } @Override public double prossimaCellaPerColonne() { // TODO Auto-generated method stub return 0; } }