Visualizzazione dei risultati da 1 a 3 su 3

Discussione: esercizioMatrice

  1. #1

    esercizioMatrice

    ciao a tutti,potreste darmi una mano?? sono alle prese con questo esercizio:
    scrivere un metodo duplicati che riceve una matrice di interi M e restituisce true se M presenta almeno una riga i cui elementi compaiono esattamente 2 volte,false altrimenti.
    il codice che ho fatto io è il seguente
    public static boolean Duplicati (int [][]M){ boolean riga_trovata=false;
    for(int i=0;i<M.length;i++){
    boolean trovato=true;
    for(int j=0;j<M[0].length;j++){
    if(ElementiUguali(M[i][j],i,M)!=2&&!riga_trovata){
    trovato=false;
    break;
    }
    if(trovato){
    riga_trovata=true;

    }

    }
    }
    return riga_trovata;
    }
    public static int ElementiUguali(int x,int indice,int [][]M){
    int conta=0;
    for(int j=0;j<M[0].length;j++){
    if(M[indice][j]==x){
    if(j!=indice){
    conta++;
    }}}
    return conta;
    }


    public static void main(String []args){
    int [][]M={{13,7,-3,22,8,2},{3,17,17,21,3,21},{3,17,3,51,4,1},{8,21,-3,22,16,22},{2,0,0,6,2,6},{2,0,9,6,8,8}};

    boolean c=Duplicati(M);
    System.out.print(c);
    }
    }

    La matrice inserita è un esempio del testo. il metodo restituisce true in quanto ci sono 2 righe che presentano elementi duplicati. facendo una prova e cioè eliminando entrambe le righe,il risultato viene ugualmente true e dovrebbe venire false xke non c'è nessuna riga che contiene duplicati. il risultato dovrebbe venire false anche se nella riga x esempio c'è anche un solo elemento che non ha il duplicato . cosa sbaglio???

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,445
    Sbagli nel chiedere in questa sezione, devi chiedere nella sezione che si occupa del linguaggio di programmazione che stai usando, in off-topic non sono consentite discussioni tecniche.

  3. #3
    Quote Originariamente inviata da Alhazred Visualizza il messaggio
    Sbagli nel chiedere in questa sezione, devi chiedere nella sezione che si occupa del linguaggio di programmazione che stai usando, in off-topic non sono consentite discussioni tecniche.
    non solo: se lo rifai, rischi di essere bannato

Tag per questa discussione

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.