Classe IV F - Biasin M. e Fellin G. Risoluzione problema #10 Di Marco Biasin e Giulio Fellin.
Classe IV F - Biasin M. e Fellin G. //leggo la dimensione della matrice do{ System.out.print("Inserisci il numero di righe della matrice: "); n=Integer.parseInt(tastiera.readLine()); }while(n<=0); do{ System.out.print("Inserisci il numero di colonne della matrice: "); m=Integer.parseInt(tastiera.readLine()); }while(n<=0); Inizio programma
//dichiarazione della matrice int mat [][]=new int[n][m]; int vett[]=new int[n*m]; //caricamento della matrice for(i=0;i<n;i++){ for(j=0;j<m;j++){ System.out.print("Inserisci il "+(j+1)+"° numero della "+(i+1)+"^ riga: "); mat[i][j]=Integer.parseInt(tastiera.readLine()); }} Inizio programma
Classe IV F - Biasin M. e Fellin G x y
Classe IV F - Biasin M. e Fellin G x y y+x-q=0
Classe IV F - Biasin M. e Fellin G x y d=n2 a=2/2 k=(d/a)-1 k=2*n-1
Classe IV F - Biasin M. e Fellin G. / / / / / / / / / / x y Matrice rettangolare diff = m-n k=2*m-1-diff k=n+m-1
Classe IV F - Biasin M. e Fellin G. //assegnazione valore max q k=n+m-1; //creazione vettore ordinato for(int q=0;q<k;q++){ for(int y=0;y<n;y++){ for(int x=0;x<m;x++){ if((y+x-q)==0){ vett[w]=mat[y][x]; w++; }}}} Ordinamento vettore
y+x-q=0 q = 0
Classe IV F - Biasin M. e Fellin G y+x-q=0 q = 1
Classe IV F - Biasin M. e Fellin G y+x-q=0 3 q = 2
Classe IV F - Biasin M. e Fellin G
Classe IV F - Biasin M. e Fellin G x y q pari q dispari
Classe IV F - Biasin M. e Fellin G. //q pari for(int y=n-1;y>=0;y--){ for(int x=m-1;x>=0;x--){ if((y+x-q)==0){ vett[w]=mat[y][x]; w++; }}} Caso q pari/dispari //q dispari for(int y=0;y<n;y++){ for(int x=0;x<m;x++){ if((y+x-q)==0){ vett[w]=mat[y][x]; w++; }}}
for(int q=0;q<k;q++){ if(q%2==0){ for(int y=n-1;y>=0;y--){ for(int x=m-1;x>=0;x--){ if((y+x-q)==0){ vett[w]=mat[y][x]; w++; }}}}else{ for(int y=0;y<n;y++){ for(int x=0;x<m;x++){ if((y+x-q)==0){ vett[w]=mat[y][x]; w++; }}}}} Programma corretto
q = 0 pari y+x-q=0
Classe IV F - Biasin M. e Fellin G q = 1 dispari y+x-q=0
Classe IV F - Biasin M. e Fellin G q = 2 pari y+x-q=
Classe IV F - Biasin M. e Fellin G q = 3 dispari y+x-q=
Classe IV F - Biasin M. e Fellin G. for(i=0;i<n*m;i++){ if(i==n*m-1) System.out.print(vett[i]+"."); else System.out.print(vett[i]+", "); } Output
Bianco = 0 Nero = 1 Uso pratico
Il programma Qwerty 2.0 ®, il nome, il logo, i contenuti presenti sulla presentazione (i testi, la grafica, i codici, ecc.) nonché le modalità di presentazione e formazione del contenuto stesso, salvo indicazione contraria, sono di proprietà dei titolari del programma e sono protetti dalle leggi italiane ed internazionali. È consentita l'archiviazione elettronica e la stampa dei contenuti di Qwerty 2.0 solo a scopo umanitario. È vietato qualsiasi altro utilizzo (commerciale, didattico, ecc.) dei contenuti del suddetto sito da parte di terzi, senza il preventivo consenso scritto del titolare_