Ciao a tutti e buon anno!!!!avrei un problemino con questo metodo java!!!
la traccia è:
Scrivere un metodo verifica che riceve in ingresso una matrice A ed un vettore V e restituisce true se ciascun elemento del vettore è presente esattamente almeno due volte nella matrice e false altrimenti.
Io ho provato a risolverlo così:
ho utilizzato un metodo ausiliario pensando di semplificare la cosa..codice:public class esercio32 { public static int contaripetuti(int[][]m,int x,int f){ int cont=0; for (int i=0;i<m.length;i++){ for (int j=0;j<m[0].length;j++) if (m[i][j]==x && j!=f) cont++; } return cont; } public static boolean verifica (int[][]a,int []v){ for (int i=0;i<m.length;i++){ for (int j=0;j<m[0].length;j++) if (contaripetuti(a,v[i],j)!=2) return false; } return true; } public static void main(String[] args) { int[][]a={{1,0,3,9,1},{1,2,0,0,3},{0,1,6,2,1,2},{9,2,4,0,1},{0,5,5,1,1,8}}; int[]v={3,5,9}; boolean b=verifica(a,v); System.out.print(b); } }
potreste dirmi dove sbaglio??o proporre una soluzione alternativa??
vi ringrazio anticipatamente!!!![]()

