Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2012
    Messaggi
    2

    aiuto diagonali matrice

    Ragazzi buongiorno..avrei un problema con un esercizio di programmazione 1 della facoltà che seguo...
    Dovrei calcolare il prodotto degli elementi delle diagonali maggiori di una matrice quadrata prendendoli in questo verso
    /
    /
    /
    Ad esempio; se avessi una matrice del tipo
    A B C
    D E F
    G H I

    dovrei fare il prodotto di :
    A
    DB
    GEC....
    e poi mettere il prodotto di ogni diagonale calcolata all'interno di un array...
    sapreste aiutarmi??

  2. #2
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    posta il tuo codice e cosa non va, oppure posta in offro/cerco lavoro (retribuito). I compiti per casa non sono ammessi da regolamento.
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2012
    Messaggi
    2
    Scusami hai rag.ione...
    ecco il codice...:

    /*Scrivere un metodo che prenda in input una matrice A quadrata n×n di
    double, e restituisca un array di double di dimensione n in cui nella
    locazione i-esima è presente il prodotto dei numeri presenti nella
    diagonale i-esima indicata nella figura.*/

    public class diag {
    public static double[] diagonale(double[][] a)
    {
    double[] n=new double[(a.length*2)-1];
    int scantot=(a.length*2)-1;
    int v=0;
    for (int i=0;i<scantot;i++)
    {

    int r,c;
    if(i<a.length)
    {
    r=i;
    c=0;
    }
    else
    {
    r=a.length-1;
    c=i-a.length+1;
    }
    while(r>=0&&c<a[0].length)
    {
    n[v]*=a[r][c];
    r--;
    c++;
    v++;
    }
    System.out.println(n[v]);
    }


    return n;
    }
    public static void main (String[]args)
    {
    double [][]a=
    {
    {1,2,3},{4,5,6},{4,5,6},
    {4,5,6},{8,9,10},{4,5,6},
    {7,8,9},{33,55,6},{4,5,6},
    };

    diagonale(a);

    }
    }

  4. #4
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    Usa il tag code: così è più leggibile
    codice:
    /*Scrivere un metodo che prenda in input una matrice A quadrata n×n di
    double, e restituisca un array di double di dimensione n in cui nella
    locazione i-esima è presente il prodotto dei numeri presenti nella
    diagonale i-esima indicata nella figura.*/
    
    public class diag {
    	public static double[] diagonale(double[][] a)
    	{
    		double[] n=new double[(a.length*2)-1];
    		int scantot=(a.length*2)-1;
    		int v=0;
    		for (int i=0;i<scantot;i++)
    		{
    			
    			int r,c;
    			if(i<a.length)
    			{
    				r=i;
    				c=0;
    			}
    			else
    			{
    				r=a.length-1;
    				c=i-a.length+1;
    			}
    			while(r>=0&&c<a[0].length)
    			{
    				n[v]*=a[r][c]; 
    				r--;
    				c++;
    				v++;
    			}
    			System.out.println(n[v]);
    		}
    		
    		
    		return n;
    	}
    	public static void main (String[]args)
    	{
    		double [][]a=
    			{
    				{1,2,3},{4,5,6},{4,5,6},
    				{4,5,6},{8,9,10},{4,5,6},
    				{7,8,9},{33,55,6},{4,5,6},
    			};
    		
    diagonale(a);
    		
    	}
    }
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  5. #5
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    ciò detto, che cos'è che non va? Lì non vedo la definizione di un array[3][3], bensì 9 x 3, che non è decisamente quadrato.
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

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.