Posted By

zitter on 07/17/11


Tagged


Versions (?)

CLEII - Laboratorio di Programmazione - Esame 26 gennaio 2011 - Domanda 7


 / Published in: Java
 

  1. public class Test7{
  2.  
  3. public static void main(String[] args){
  4. /* modifica l'array come piu' ti piace */
  5. int[] ar = {4,4,4,3,6,7,4,4,4,4,4,4,4,4,4,4,1,1,1,1,1,1,1};
  6. System.out.println("Il numero che compare piu' volte nell'array e': " + Domanda7(ar));
  7. }
  8.  
  9. public static int Domanda7(int[] A) {
  10. int l = A.length; // lunghezza dell'array passato come argomento al metodo Domanda7
  11. int c = 0;
  12. int n = 0;
  13. int max = 0;
  14.  
  15. /* il trucco per risolvere questo problema
  16. sta nel confrontare ogni elemento dell'array
  17. (che ricavo dal primo ciclo FOR)
  18. con gli stessi elementi dello stesso array
  19. */
  20. for(int i = 0; i < l; i++){ // scorro tutti gli elementi dell'array
  21. for(int j = 0; j < l; j++){ // li scorro di nuovo, questa vola per confrontarli con quelli precedenti
  22.  
  23. if(A[i]==A[j]){ // se i due elementi sono uguali...
  24. c++; // ... allora incrementa la variabile c
  25. }
  26.  
  27. if(c>max) { // se la variabile c e' piĆ¹ grande della variabile max
  28. max = c; // assegna a max il valore di c
  29. n = A[i]; // assegna alla variabile n il valore dell'elemento dell'array che e' stato ripetuto tante volte da superare il valore di max
  30. }
  31.  
  32. }
  33. c = 0; //resetta il contatore c
  34. }
  35.  
  36. /* restituisci n, ossia l'elemento dell'array */
  37. return n;
  38. }
  39.  
  40. }

Report this snippet  

You need to login to post a comment.