Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 19
  1. #1
    Utente di HTML.it L'avatar di adf89
    Registrato dal
    Jan 2010
    Messaggi
    21

    Confronto righe matrice

    Salve a tutti...

    ho un piccolo problema che nn riesco a risolvere...
    sto effettuando un controllo di righe in una matrice per vedere qual'è la più grande (ovvero, sommati i valori interni e restituito il numero, vedere qual'è il più grande)
    ma non capisco perchè non mi restituisce il valore giusto..

    questo è il codice centrale del metodo, quello che fà il confronto tra le righe:
    codice:
    double a=0;  		
    for(int i=0; i<m.length-1; i++)               		
    if(contr(m[i]) > contr(m[i+1])) 		
    { 			
    a=contr(m[i]); 		
    } 		
    else a=contr(m[i+1]);    		
    return a;
    il metodo che somma le posizioni interne è giusto e in questo caso si chiama "contr".

    grazie per l'aiuto...

  2. #2
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    76
    mhmh....tu vuoi vedere quale riga di una matrice (quindi vettore) è più grande giusto? per vedere se un vettore è più grande sommi i suoi elementi giusto?

    immagino che la tua matrice sia composta da un Array dinamico di vettori statici giusto?

    una cosa del genere?? (utilizzo una matrice fissa ma penso che cambi poco)

    codice:
    mtr[5][5];
    maxsum=0;
    for(i =0; i< 5;i++){
      par=0;
      for(j =0;j< 5 ; j++){
         par+=mtr[i][j];
       }
       if(par > maxSum){
          maxSum=par;
       }
    }
    return maxsum;
    p.s. non l'ho provato ma penso che logicamente vada bene...

  3. #3
    Utente di HTML.it L'avatar di adf89
    Registrato dal
    Jan 2010
    Messaggi
    21
    ma a me serve dividere il tutto in metodi...

    per questo volevo sapere se quello che ho scritto è giusto...ovvero:

    codice:
    if(contr(m[i]) > contr(m[i+1])
    perchè non mi ritorna il vettore giusto.

  4. #4
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    76
    ma contr come è fatto? prova a postalo qui...

  5. #5
    Utente di HTML.it L'avatar di adf89
    Registrato dal
    Jan 2010
    Messaggi
    21
    come ho scritto prima contr è giusto perchè l'ho provato singolarmente...

    il problema me lo dà il codice postato nel primo commento...

  6. #6
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    76
    vabbè ho capito che contr è closed source....

    ma m è una matrice? ...la mia ignoranza (perche non l'ho mai utilizzato in questo modo) punta il dito su m.length ..sei sicuro che restituisca il numero di righe e non il numero di colonne?...

  7. #7
    Utente di HTML.it L'avatar di adf89
    Registrato dal
    Jan 2010
    Messaggi
    21
    si m è la matrice
    e mi sto riferendo alle righe, altimenti avrei scritto m[0].length

  8. #8
    Utente di HTML.it
    Registrato dal
    Feb 2009
    Messaggi
    502
    Originariamente inviato da adf89
    ma a me serve dividere il tutto in metodi...

    per questo volevo sapere se quello che ho scritto è giusto...ovvero:

    codice:
    if(contr(m[i]) > contr(m[i+1])
    perchè non mi ritorna il vettore giusto.
    No, non è corretto per quello che vuoi ottenere.
    Se per assurdo tutte le righe avessero un valore somma che è sempre crescente, passeresti tutta la matrice senza mai avere il tuo valore massimo.
    al volante son nervoso

  9. #9
    Utente di HTML.it L'avatar di adf89
    Registrato dal
    Jan 2010
    Messaggi
    21
    quindi dovrei implementare qualche condizione??

  10. #10
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    76
    codice:
    double a=0;  		
    for(int i=0; i<m.length; i++)               		
    if(a > contr(m[i])){ 			
        a=contr(m[i]); 		
    } 		  		
    return a;

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 © 2025 vBulletin Solutions, Inc. All rights reserved.