Java: elementi vettore maggiori di elementi matrice

Tema 68

Scrivere un metodo isOgniElementoDelVettoreMaggioreDiAlmenoUnElementoDellaMatrice che riceve in ingresso una matrice M e un vettore V e restituisce TRUE se ciascun elemento del vettore è maggiore di almeno un elemento nella matrice; FALSE altrimenti.

Ad esempio, siano M e V rispettivamente una matrice e un vettore così costituiti

2 3 4 5 5
7 8 9 10 8
10 9 8 7 5
7 7 4 6 3
9 7 5 3 7
3 4 7 9

allora isOgniElementoDelVettoreMaggioreDiAlmenoUnElementoDellaMatrice (M,V) = TRUE

 public class tema68{ public static boolean isOgniElementoDelVettoreMaggioreDiAlmenoUnElementoDellaMatrice (int[][] M, int[] V){ // con il solito procedimento individuiamo l’elemento più piccolo nella matrice int min = M[0][0]; for (int i = 0; i < M.length; i++) for (int j = 0; j < M[0].length; j++) if (M[i][j] < min) min = M[i][j]; boolean elementoMaggiore = true; // a questo puntoscorriamo l’array e ci accertiamo che ogni suo element sia // maggiore del minimo trovato // nella matrice for (int k = 0; k < V.length && elementoMaggiore; k++){ if (V[k] <= min) // in caso di esito negativo impostiamo la variabile boolean sul valore FALSE e // questo interromperà il ciclo elementoMaggiore = false;} return elementoMaggiore; }  /* Applicazione di prova */  public static void main(String[] args){ int[][] M = new int[][]{{2,3,4,5,5}, {7,8,9,10,8}, {10,9,8,7,5}, {7,7,4,6,3}, {9,7,5,3,7}}; int[] V = new int[]{3,4,7,9}; System.out.println(isOgniElementoDelVettoreMaggioreDiAlmenoUnElementoDellaMatrice (M,V)); } }     

Commenti

commenti