Esercizio sulle matrici..

di il
42 risposte

42 Risposte - Pagina 3

  • Re: Esercizio sulle matrici..

    Ma allora sono io che non mi spiego, io non riesco a trovare una condizione afinchè vengano fatte ste somme parziali... o meglio l'avrei trovata , ossia che l'indice j<=i. Pero mi viene stampata sempre la stessa cifra..
  • Re: Esercizio sulle matrici..

    Non devi cercare nessuna condizione.
    Se visualizzi la somma nel ciclo, quella è una somma parziale.

    Insomma, con questo codice
    
    	for(i=0;i<N;i++)
    	{
    		for(j=0;j<N;j++)
    		{
       		        somma=somma+matrice1[i][j];
    			printf("Somma[%d][%d] = %d\n", i, j, somma);
    		}   
    	}
    
    visualizzi tutte le somme parziali che ti servono ... quindi ...
  • Re: Esercizio sulle matrici..

    Ma veramente il testo è diverso da questo.
  • Re: Esercizio sulle matrici..

    Oh Davide ... sveglia ... lLo so che il testo è diverso ... sto cercando di farti arrivare alla soluzione per passi ... ma vedo che non ho fortuna.

    Con questo codice visualizzi le somme parziali? Adesso basta inserire queste somme parziali negli elementi matrice2[j] e poi visualizzarla.
  • Re: Esercizio sulle matrici..

    L'esercizio non richiede le somme parziali.
    All'elemento 11 per esempio ci deve essere la somma dell'elemento 00, 01, 10, 11.
  • Re: Esercizio sulle matrici..

    E la somma degli elementi 00, 01, 10, 11 non è una somma parziale? Tu come la chiami?

    Se scrivi
    
    for(i=0;i<N;i++)
       {
          for(j=0;j<N;j++)
          {
                     somma=somma+matrice1[i][j];
                     matrice2[i][j] = somma;
          }   
       }
    
    cosa ottieni ?
  • Re: Esercizio sulle matrici..

    Mi visualizza oltre quello che visualizzavo prima anche la matriceB con gli elementi messi al loro posto secondo le somme parziali , solo che le somme che io cerco sono diverse.
  • Re: Esercizio sulle matrici..

    Cioè ? Fai un esempio
  • Re: Esercizio sulle matrici..

    Matrice di partenza

    5 2 2
    2 4 3
    4 9 7


    matrice che devo ottenere

    5 7 9
    11 15 18
    22 31 38.

    Io pero dovrei ottenere:

    5 7 9
    7 15 18... e cosi via.
  • Re: Esercizio sulle matrici..

    Ah, quindi somme parziali per "area" ...

    Quindi
    
    	for(i=0;i<N;i++)
    		for(j=0;j<N;j++)
    		{
    			somma = 0;
    
    			for(k=0;k<=i;k++)
    				for(w=0;w<=j;w++)
    					somma=somma+matrice1[k][w];
    
    			matrice2[i][j]=somma;
    		}   
    
  • Re: Esercizio sulle matrici..

    Sii, è proprio per questo che io avevo introdotto gli indici t ed s in principio e poi quando mi hai detto di procedere solo con gli indici i, j non sapevo come procedere !!
  • Re: Esercizio sulle matrici..

    Sì, ma gli altri indici li devi usare con altre due for innestate altrimenti non servono, nè da soli nè con if di controllo.
  • Re: Esercizio sulle matrici..

    Non avevo pensato ad annidare altri 2 for dentro i primi 2, è più facile di quanto credessi.
    Comunque per sfoltire il programma ho utilizzato una sola funzione stampamatrice.
    Grazie comunque oregon
Devi accedere o registrarti per scrivere nel forum
42 risposte