Pages: [1]   Go Down
Print
Author Topic: matrice frastagliata  (Read 1961 times)
0 Members e 1 Utente non registrato stanno visualizzando questa discussione.
Rubber
Matricola
*
Offline Offline

Gender: Male
Posts: 12


Chi si adatta ha già vinto


WWW
« on: 21-02-2011, 19:33:21 »

Come si scorrono le colonne di una matrice frastagliata di byte ?
Devo sommare le colonne e confrontarle con i valori di un array!!!!!
Logged

Il gallo si sente gallo...ma non sa che in realtà è solo un pollo
FReddy
Apprendista Forumista
**
Offline Offline

Posts: 367



« Reply #1 on: 21-02-2011, 22:50:43 »

for(k=0;k<array.length;k++)
{
    for(j=0;j<array.length;j++)
    {
        if(k<array[j].length)
           array[j][k]=...
    }
}

l'ho buttato giù sul momento ma dovrebbe funzionare  ok

« Last Edit: 21-02-2011, 23:06:45 by FReddy » Logged

Il presente è ora,
Il passato era ora,
Il futuro sarà ora.
CoreyTaylor26
Matricola
*
Offline Offline

Gender: Male
Posts: 78



« Reply #2 on: 21-02-2011, 22:56:24 »

No, questo codice non è esatto.. Il modo esatto di scorrere le colonne di una matrice frastagliata è questo:
Code:
int maxColonna = 0;

for(int i=0; i<A.length; i++)
if(A[i].length>maxColonna)
maxColonna = A[i].length;

for(int j=0; j<maxColonna; j++)
{
for(int i=0; i<A.length; i++)
if(j<A[i].length)
...

Se non capisci qualcosa basta dirlo!  ciao
« Last Edit: 21-02-2011, 23:01:41 by CoreyTaylor26 » Logged
CoreyTaylor26
Matricola
*
Offline Offline

Gender: Male
Posts: 78



« Reply #3 on: 21-02-2011, 22:59:29 »

Questo:

Code:
for(int i=0; i<A.length; i++)
if(A[i].length>maxColonna)
maxColonna = A[i].length;

puoi anche scriverlo come:

Code:
for(int i=0; i<A.length; i++)
maxColonna = Math.max(maxColonna, A[i].length);
Logged
FReddy
Apprendista Forumista
**
Offline Offline

Posts: 367



« Reply #4 on: 21-02-2011, 23:09:24 »

Sinceramente sono stanco (è un giorno che studio) per provarlo, ma esattamente cosa non va nel mio codice?
Logged

Il presente è ora,
Il passato era ora,
Il futuro sarà ora.
CoreyTaylor26
Matricola
*
Offline Offline

Gender: Male
Posts: 78



« Reply #5 on: 21-02-2011, 23:41:29 »

Sono stanco anche io  yoh l'ho rivisto attentamente e ho fatto qualche prova.. effettivamente è giusto anche il tuo!  ciao sono partito col cervello!
Logged
FReddy
Apprendista Forumista
**
Offline Offline

Posts: 367



« Reply #6 on: 21-02-2011, 23:52:06 »

Grazie per debug CoreyTaylor26  ok
Logged

Il presente è ora,
Il passato era ora,
Il futuro sarà ora.
CoreyTaylor26
Matricola
*
Offline Offline

Gender: Male
Posts: 78



« Reply #7 on: 21-02-2011, 23:54:18 »

Ahaha! XD scusami per il falso allarme!  yoh
Logged
SkyWolf
Matricola
*
Offline Offline

Gender: Male
Posts: 90



« Reply #8 on: 22-02-2011, 09:57:27 »

Sinceramente sono stanco (è un giorno che studio) per provarlo, ma esattamente cosa non va nel mio codice?

Non va il fatto che tu utilizzi array.length come "massimo" in entrambi i cicli
for(k=0;k<array.length;k++)
{
    for(j=0;j<array.length;j++)
    {
        ....
di conseguenza se hai un maggior numero di colonne anzichè di righe (tralasciando il fatto che sia frastagliato o meno) scorri solo un numero di colonne pari al numero di righe.
Il codice di Corey invece è precisamente quello corretto.

Danilo.
Logged

Danilo Catalano.
FReddy
Apprendista Forumista
**
Offline Offline

Posts: 367



« Reply #9 on: 22-02-2011, 15:28:27 »

Quote
di conseguenza se hai un maggior numero di colonne anzichè di righe (tralasciando il fatto che sia frastagliato o meno) scorri solo un numero di colonne pari al numero di righe.

Più che giusto SkyWolf  pray

Meglio farli a testa frescha gli algoritmi  ok
Logged

Il presente è ora,
Il passato era ora,
Il futuro sarà ora.
Shin
Forumista
***
Offline Offline

Gender: Male
Posts: 822

Io sono ciò che sono per ciò che siamo tutti


WWW
« Reply #10 on: 22-02-2011, 15:32:42 »

Il miglior modo per scorrere un array (funziona anche se frastagliato) secondo me è questo:

Code:
for (int i=0; i<array.length; i++)
{
for (int j=0; j<array[i].length; j++)
{
...
}
}
Logged

"Il peggiore analfabeta è l’analfabeta politico. Egli non sente, non parla, nè s’importa degli avvenimenti politici. Egli non sa che il costo della vita, il prezzo dei fagioli, del pesce, della farina, dell’affitto, delle scarpe e delle medicine dipendono dalle decisioni politiche.

L’analfabeta politico è così somaro che si vanta e si gonfia il petto dicendo che odia la politica.

Non sa, l’imbecille, che dalla sua ignoranza politica nasce la prostituta, il bambino abbandonato, l’assaltante, il peggiore di tutti i banditi,
che è il politico imbroglione, il mafioso corrotto, il lacchè delle imprese nazionali e multinazionali."

(Bertolt Brecht)

Collettivo SDAI: collettivosdai.altervista.org, facebook.
Movimento Studentesco Catanese: www.movimentostudentesco.org

https://github.com/ShinDarth
http://shinworld.altervista.org
http://www.openprogrammers.it

LinuxMint user.
CoreyTaylor26
Matricola
*
Offline Offline

Gender: Male
Posts: 78



« Reply #11 on: 22-02-2011, 15:56:17 »

Il miglior modo per scorrere un array (funziona anche se frastagliato) secondo me è questo:

Code:
for (int i=0; i<array.length; i++)
{
for (int j=0; j<array[i].length; j++)
{
...
}
}

Si parlava di scorrere l'array frastagliato per colonne! Wink non per righe!
Logged
Shin
Forumista
***
Offline Offline

Gender: Male
Posts: 822

Io sono ciò che sono per ciò che siamo tutti


WWW
« Reply #12 on: 23-02-2011, 13:43:31 »

Ah scusate non avevo capito!
Logged

"Il peggiore analfabeta è l’analfabeta politico. Egli non sente, non parla, nè s’importa degli avvenimenti politici. Egli non sa che il costo della vita, il prezzo dei fagioli, del pesce, della farina, dell’affitto, delle scarpe e delle medicine dipendono dalle decisioni politiche.

L’analfabeta politico è così somaro che si vanta e si gonfia il petto dicendo che odia la politica.

Non sa, l’imbecille, che dalla sua ignoranza politica nasce la prostituta, il bambino abbandonato, l’assaltante, il peggiore di tutti i banditi,
che è il politico imbroglione, il mafioso corrotto, il lacchè delle imprese nazionali e multinazionali."

(Bertolt Brecht)

Collettivo SDAI: collettivosdai.altervista.org, facebook.
Movimento Studentesco Catanese: www.movimentostudentesco.org

https://github.com/ShinDarth
http://shinworld.altervista.org
http://www.openprogrammers.it

LinuxMint user.
Pages: [1]   Go Up
Print
Jump to: