Visualizzazione dei risultati da 1 a 3 su 3

Visualizzazione discussione

  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2015
    Messaggi
    11

    Java: Calcolare il prodotto della diagonale principale e secondaria della matrice

    Buonasera. Dovrei scrivere un programma (l'ambiente usato è Eclipse) che data un matrice quadrata stampi la matrice stessa, la diagonale principale, quella secondaria e ne calcoli i rispettivi prodotti. Sono bloccato sul prodotto. Ecco il codice che ho compilato.
    codice:
    MainWindow finestra = new MainWindow();
        InputBox inDati = new InputBox(finestra);
        OutputBox uDati = new OutputBox(finestra);
        finestra.setVisible(true);
        //numero righe = numero colonne
        int n_righe = inDati.getInteger("Quanti righe e colonne ha la matrice quadrata?");
        int n_colonne = n_righe;
        int dim = n_righe;
        int prodotto_diagonale_principale = 0;
        int prodotto_diagonale_secondaria = 0;
    
    
            
        
        //dichiarato matrice
        int [][] m = new int [n_righe][n_colonne];
        //riempio la matrice
        for (int i=0; i<n_righe; i++){
        for (int j=0; j<n_colonne; j++)
        m[i][j]=inDati.getInteger("Inserisci il valore in posizione ["+i+"] ["+j+"]");
        }
    
    
        for (int i=0; i<n_righe; i++){
        for (int j=0; j<n_colonne; j++) 
        uDati.print(m[i][j]+ " ");
        uDati.printLine("");
        }
        uDati.setVisible(true);
        
        
        uDati.print("Diagonale principale: "); 
        for (int i = 0; i < n_righe; i++) { 
        for (int j = 0; j < n_righe; j++) { 
        if (i == j) { 
        uDati.print(m[i][j] + " ");
        } 
        } 
        } 
        uDati.printLine("");
        
        uDati.print("Diagonale secondaria: "); 
        for (int i = 0; i < n_righe; i++) { 
        for (int j = 0; j < n_righe; j++) { 
        if ((i + j) == (dim -1)) { 
        uDati.print(m[i][j] + " ");
        
        } 
        } 
        } 
        uDati.printLine("");
        
        uDati.print("Il prodotto dei valori della diagonale principale vale: ");
        for (int i=0; i<n_righe; i++){
        for (int j=0; j<n_righe; j++){
        if(i == j){
        prodotto_diagonale_principale *= m [n_righe][n_colonne];
        uDati.print(prodotto_diagonale_principale + " ");
        }
        }
        }
        uDati.printLine("");
        
        uDati.print("Il prodotto dei valori della diagonale secondaria vale:");
        for (int i=0; i<n_righe; i++){
        for (int j=0; j<n_righe; j++){
        if ((i + j) == (dim -1)) { 
        prodotto_diagonale_secondaria *= m [n_righe][n_colonne];
        uDati.print(prodotto_diagonale_secondaria + " ");
        }
        }
        }
    Ringrazio tutti per il possibile aiuto. Non capisco proprio cosa ci sia che non funziona!
    Ultima modifica di MItaly; 25-03-2015 a 02:02 Motivo: Tag CODE, sezione errata

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.