10/01/2023 - andbin ha scritto:
Devi ragionare in questo modo, parti dal concetto di “almeno due numeri uguali” in un array int[]. Per ciascun elemento a indice i devi andare a cercare quel valore agli indici i+1….length-1. Quindi quali/quanti cicli ti servono?
Inizia con il fare un metodo a sé stante:
public static boolean almenoDueUguali(int[] array)
Poi il fatto di trattare una matrice (quindi più array) lo farai a monte nel main.
Grazie per la risposta attualmente sono risucito a risolvere in questo modo :
public static void main(String [] args){
Scanner tastiera = new Scanner(System.in);
int n , count=0, elemento=0;
System.out.println("Inserisci valore di n");
n = tastiera.nextInt();
int array [] = new int [16];
int matrice [][] = new int [n][n] ; //{{1 ,1 , 2 , 1},{3 , 2 , 1 , 4 },{4 , 1 , 4 , 2 },{1 , 4 , 3 , 2}};
for(int i =0; i <matrice.length; i++){
for(int j=0;j<matrice.length;j++){
matrice[i][j]=(int)(Math.random()*n);
}
}
System.out.println("Stampa Matrice");
for(int i = 0; i < matrice.length; i ++){
for(int j =0; j<matrice[i].length; j++){
System.out.print("\t" + matrice[i][j]);
}
System.out.println();
}
for(int i =0; i<matrice.length; i++){
int conta=0;
for(int j=0; j<matrice[i].length;j++){
elemento=matrice[i][j];
for(int k=j+1; k<matrice[i].length;k++){
if (elemento==matrice[i][k] && conta == 0){
System.out.println("Riga " + i + " numeri");
count++;
conta++;
}
}
}
}
System.out.println(count);
}
}
Adesso provo a sviluppare anche il tuo suggerimento.