Duvida!

/* Crie um aplicativo que leia uma matriz de 5X5 elementos inteiros. Calcular e imprimir:

a)A soma dos elementos da diagonal principal
b)Gerar um vetor com a soma das colunas
c)Gerar um vetor com a soma das linhas
d)Transpor a matriz
*/

tenho algumas duvidas em matriz principalmnte neste execicio, bem a 1ª duvida, por exemplo tenho uma matriz 5*5 uma matriz quadrada para cada coluna eu tenhu 5 linhas??? pergunto isso porque neste exemplo mostra isso:

import javax.swing.*;

public class Prog17
{
	public static void main(String args[])
	{
		int mat[][]=new int[5][5],c,l;          
	    String saida;   //l  c
		JTextArea saidat = new JTextArea(20,25);
		JScrollPane resultado = new JScrollPane(saidat);
		
		for(c=0;c<5;c++)
		{
			for(l=0;l<5;l++)
			{
				mat[c][l]=Integer.parseInt(JOptionPane.showInputDialog(null,"Dígite na coluna "+c+" e na linha "+l,"CALCULO DE MATRIZ",JOptionPane.WARNING_MESSAGE));
			}
		}
		
		

	}
}

ou e igual na matematica?
como eu faço a soma dos elementos da diagonal principal?? como faço pra descobrir a diagonal principal?

o que é transpor matriz???
[size=“11”][color=“red”]* Editado: Lembre-se de utilizar BBCode em seus códigos - AnjoSupremo[/color][/size] :joia:

Outra duvida eu acho que diagonal principal e que tem mesma número na linha e na coluna e isso mesmo?

Matriz Transposta

Matrizes

Matriz quadrada é a matriz que tem o número de linhas igual ao número de colunas, i.e., m=n.

Diagonal principal: A diagonal principal da matriz é indicada pelos elementos da forma a(i,j) onde i=j.

Mais sobre Matriz

Um Abraço !

Achei mais um Boa Matéria sobre Matriz

Um Abraço !

Obrigado pela informação, mais estou quebrando minha cabeça aqui e não
consigo resolver. bem a matriz e 5*5 colunas 0,1,2,3,4 e linhas 0,1,2,3,4
trata-se de uma matriz quadrada, bem na coluna 0 ele digita nas linhas 1,2,3,4,5 ate chegar na ultima coluna que é a quarta as colunas e linhas iguais vão ficar assim (linha,coluna)=(1,1)(2,2)(3,3)(4,4) a soma da 20
mais no programa ue eu fiz deu 15?? o programa está ai embaixo!

import javax.swing.*;

public class Prog17
{
	public static void main(String args[])
	{
		int mat[][]=new int[5][5],c,l,S1=0,S2=0,S3=0;
		int vc[]=new int[5],vl[]=new int[5];       
	    String saida;   //l  c
		JTextArea saidat = new JTextArea(20,25);
		JScrollPane resultado = new JScrollPane(saidat);
		saida="Programa 17 \n";
		
		for(c=0;c<5;c++)
		{

			for(l=0;l<5;l++)
			{
				mat[c][l]=Integer.parseInt(JOptionPane.showInputDialog(null,"Dígite na coluna "+c+" e na linha "+l,"CALCULO DE MATRIZ",JOptionPane.WARNING_MESSAGE));
				//Letra A
				if(c==l)
				S1=S1+mat[c][l];
			}
		}
		saida+=S1+"\n";
	   
	    
	    
	    
		saidat.setText(saida);
		JOptionPane.showMessageDialog(null,resultado);
		

	}
}

Porque será???

pd desenhar sua matriz com os valoes certinho pra gente ver como que ta?

ai está minha matriz desenhada!!!

exemplo em linhas e colunas; bem podemos fazer soma de matrizes se os elementos estiverem na mesma posição; como vcs podem ver na minha martiz exemplo os que são iguais são(1,1),(2,2)(3,3)(4,4) não estão na mesma posição como a soma pode dar 15??? alguém sabe qual será o valor dessa soma pois no meu exemplo a seguir se vc digitar os seguintes elementos vai dar 15

import javax.swing.*;

public class Prog17
{
	public static void main(String args[])
	{
		int mat[][]=new int[5][5],c,l,S1=0,S2=0,S3=0;
		int vc[]=new int[5],vl[]=new int[5];       
	    String saida;   //l  c
		JTextArea saidat = new JTextArea(20,25);
		JScrollPane resultado = new JScrollPane(saidat);
		saida="Programa 17 \n";
		
		for(c=0;c<5;c++)
		{

			for(l=0;l<5;l++)
			{
				mat[c][l]=Integer.parseInt(JOptionPane.showInputDialog(null,"Dígite na coluna "+c+" e na linha "+l,"CALCULO DE MATRIZ",JOptionPane.WARNING_MESSAGE));
				//Letra A
				if(c==l)
				S1=S1+mat[c][l];
			}
		}
		saida+=S1+"\n";
	   
	    
	    
	    
		saidat.setText(saida);
		JOptionPane.showMessageDialog(null,resultado);
		

	}
}

podem ver que o valor da 15 essa e minha duvida!

ela n comecaria da posicao 0.0 nao kra ?

[quote]0.0 | 1.0 | 2.0 | 3.0 | 4.0 |
0.1 | 1.1 | 2.1 | 3.1 | 4.1 |
0.2 | 1.2 | 2.2 | 3.2 | 4.2 |
0.3 | 1.3 | 2.3 | 3.3 | 4.3 |
0.4 | 1.4 | 2.4 | 3.4 | 4.4 | [/quote]

soma agora 0 + 1 + 2 +3 + 4 = 10

o resultado n teria q ser 10 nao ?

bem no diagrama que eu estou mostrando, estou colocando como o usuário
está digitando no caso da minha matriz ele digite 1 na linha 0 e coluna 0,
essa matriz que vc fez

e sem valores dígitados pelo usuario mais se na posição |0.0| o usuario
dígitar 1 na linha 0 ai vai ficar
|1.0| que dizer posição zero,zero que recebeu 1 na linha zero da coluna zero
um exemplo e essa matriz minha

vai seguindo assim o usuario dígita 1 na linha da (0,0), ai vai ficar
(1,que e da linha, receber o valor,0 que e da coluna) ai vai ficar (1,0)
meu exemplo o usuário dígita 1,2,3,4,5 na linhas; essa soma que esta me confundindo
mais sua informação me deu uma noção melhor!

Certo… entoa c agora tu somas

1 + 2 + 3 + 4 + 5 = 15 certo ?

da uma olhada no aplicativo q fiz

[code]public class Teste {
public static void main( String[] args ) {
int[][] x = new int[5][5];

            // Incializa o Array
            for( int i = 0; i < 5; i++ ) {
                    for(int j = 0; j < 5; j++)
                            x[i][j] = i+1;


            }

            // Soma os dados do Array
            int soma = 0;

            for( int i = 0; i < 5; i++ ) {
                    for(int j = 0; j < 5; j++) {
                            if(i==j)
                                    soma += x[i][j];

                    }

            }
    }

}[/code]

Entendeu ?

No cara valeu mesmo pelo seu exemplo eu entendi vo tentar fazer
as outras perguntas do exercicio qualquer coisa se eu naum estiver entedendo
eu mando outra menssagem mais valew mesmo!

bateu outra duvida este execicio

[code]
/* Crie um aplicativo que leia uma matriz de 5X5 elementos inteiros. Calcular e imprimir:

a)A soma dos elementos da diagonal principal
b)Gerar um vetor com a soma das colunas
c)Gerar um vetor com a soma das linhas
d)Transpor a matriz
*/

import javax.swing.*;

public class Prog17
{
public static void main(String args[])
{
int mat[][]=new int[5][5],c,l,Sc=0,S1=0,S3=0,j=0,x;
int vc[]=new int[5],vl[]=new int[5];
String saida; //l c
JTextArea saidat = new JTextArea(25,25);
JScrollPane resultado = new JScrollPane(saidat);
saida=“Programa 17 \n”;

	for(c=0;c<5;c++)
	{

		for(l=0;l<5;l++)
		{
			mat[c][l]=Integer.parseInt(JOptionPane.showInputDialog(null,"Dígite na coluna "+c+" e na linha "+l,"CALCULO DE MATRIZ",JOptionPane.WARNING_MESSAGE));
			//Letra A
			if(c==l)
			S1=S1+mat[c][l];
		}
	}
	for(c=0;c<5;c++)
		for(l=0;l<5;l++)
		{
			Sc=Sc+mat[c][l];
			if(c==4)
			{
				vc[j++]=Sc;
				Sc=0;
			}
		}
	
	saida+="Letra A \n";
	saida+="A soma da diagonal principal é\t"+S1+"\n";
	saida+="*******************************************\n";
	saida+="Letra B \n";
	for(x=0;x<5;x++)
	{
		saida+=vc[x]+"\n";
	}
   
    
    
    
	saidat.setText(saida);
	JOptionPane.showMessageDialog(null,resultado);
	

}

}[/code]

estou tentando fazer um algoritimo pra somar as colunas mais não está dando certo, o resultado está totalmente errado ja pensei em tudo mais sai nada alguém tem alguma solução?

kra. olhe o codigo q fiz pra ti, e pense um poco mais, isso que tu ta tentano fazer e + simples do que o codigo q eu fiz pra ti, da uma olhada legal q tu vai conseguir.
:joia:

e cara penei mais conseguir fazer da uma olhada ai no fonte se vc achar erro vc me da ideia falow!! muito obrigado pela ajuda sem ela naum séria possivel!

/* Crie um aplicativo que leia uma matriz de 5X5 elementos inteiros. Calcular e imprimir:
 
 a)A soma dos elementos da diagonal principal
 b)Gerar um vetor com a soma das colunas
 c)Gerar um vetor com a soma das linhas
 d)Transpor a matriz
*/

import javax.swing.*;

public class Prog17
{
	public static void main(String args[])
	{
		int mat[][]=new int[5][5],c,l,Sc=0,S1=0,Sl=0,j=0,x;
		int vc[]=new int[5],vl[]=new int[5],a=0;   
		int trasmposta[][]= new int [5][5];    
	    String saida;   //l  c
		JTextArea saidat = new JTextArea(25,25);
		JScrollPane resultado = new JScrollPane(saidat);
		saida="Programa 17 \n";
		
		for(c=0;c<5;c++)
		{

			for(l=0;l<5;l++)
			{
				mat[c][l]=Integer.parseInt(JOptionPane.showInputDialog(null,"Dígite na coluna "+c+" e na linha "+l,"CALCULO DE MATRIZ",JOptionPane.WARNING_MESSAGE));
				//Letra A
				if(c==l)
				S1=S1+mat[c][l];
			
			}
		
		}
			saida+="Letra A \n";
		saida+="A soma da diagonal principal é\t"+S1+"\n";
		saida+="*******************************************\n";
		saida+="Letra B \n";
//********************************************* fim da letra a e da entrada de dados *****************************************************************
		for(l=0;l<5;l++)//esse for e das linas
			for(c=0;c<5;c++)// se e soma das colunas, o que representa a coluna veem primeiro
			{
				Sc=Sc+mat[c][l];
				if(c==4)
				{
					
					vc[j++]=Sc;
					Sc=0;
				}
			}
		
		saida+=" A soma das colunas é:\n";
		for(x=0;x<5;x++)
		{
			saida+=vc[x]+"\n";
		}
//**********************************************************fim da letra b **********************************************************************************	
saida+="***********************************************\n";
saida+="Letra C \n";	
		for(c=0;c<5;c++)
		   for(l=0;l<5;l++)
		   {
		   	 Sl=Sl+mat[c][l];
		   	 if(l==4)
		   	 {
		   	 	vl[a++]=Sl;
		   	 	Sl=0;
		   	 }
		   }
		for(x=0;x<5;x++)
		{
			saida+=vl[x]+"\n";
		}
//********************************************************fim da letra c*****************************************************************************
saida+="Transpondo a Matriz \n";
	for(c=0;c<5;c++)
		   for(l=0;l<5;l++)
		   {
		   	  trasmposta[c][l]=mat[l][c];
		   }
           for(c=0;c<5;c++)
		    for(l=0;l<5;l++)
		    {
		    	saida+=trasmposta[c][l];
		    }
		saidat.setText(saida);
		JOptionPane.showMessageDialog(null,resultado);
		

	}
}

Poste a parte q tu ta com duvidas, e bem + facil pra ajudar, certifique-se que seu codigo esta 100% até o momento de vc percorrer o array, :joia:

No cara outra duvida minha!!! o que e trasnpor a matriz!!!
alguém tem o algoritimo??? presciso urgente!!!

Bem vo deixar o codigo ai pra galera ver!! conceito sobre matriz eu ja tenho quero é algoritimo no caso de trasmpor a matriz vo deixar o exercicio ai embaixo quem tiver a manha completa ou me da um toque como fazer! tentei…tentei mais naum tem jeito alguém me ajude! lembrado que a LETRA D DO EXERCICIO TODAS AS OUTRAS ESTÂO CERTAS JÀ CONFERI!

/* Crie um aplicativo que leia uma matriz de 5X5 elementos inteiros. Calcular e imprimir:
 
 a)A soma dos elementos da diagonal principal
 b)Gerar um vetor com a soma das colunas
 c)Gerar um vetor com a soma das linhas
 d)Transpor a matriz
*/

import javax.swing.*;

public class Prog17
{
	public static void main(String args[])
	{
		int mat[][]=new int[5][5],c,l,Sc=0,S1=0,Sl=0,j=0,x;
		int vc[]=new int[5],vl[]=new int[5],a=0;   
		int trasmposta[][]= new int [5][5];    
	    String saida;   //l  c
		JTextArea saidat = new JTextArea(30,35);
		JScrollPane resultado = new JScrollPane(saidat);
		saida="Programa 17 \n";
		
		for(l=0;l<5;l++)
		{

			for(c=0;c<5;c++)
			{
				mat[l][c]=Integer.parseInt(JOptionPane.showInputDialog(null,"Dígite na linha ["+l+"] e na coluna ["+c+"]","CALCULO DE MATRIZ",JOptionPane.WARNING_MESSAGE));
				//Letra A
				if(c==l)
				S1=S1+mat[l][c];
			
			   saida+="["+mat[l][c]+"\t"+c+"]";

				//saida+="\r";
			
			}

			saida+="\n";
		   
		}
			saida+="Letra A \n";
		saida+="A soma da diagonal principal é\t"+S1+"\n";
		saida+="*******************************************\n";
		saida+="Letra B \n";
//********************************************* fim da letra a e da entrada de dados *****************************************************************
		for(l=0;l<5;l++)//esse for e das linas
			for(c=0;c<5;c++)// se e soma das colunas, o que representa a coluna veem primeiro
			{
				Sc=Sc+mat[c][l];
				if(c==4)
				{
					
					vc[j++]=Sc;
					Sc=0;
				}
			}
		
		saida+=" A soma das colunas é:\n";
		for(x=0;x<5;x++)
		{
			saida+=vc[x]+"\n";
		}
//**********************************************************fim da letra b **********************************************************************************	
saida+="***********************************************\n";
saida+="Letra C \n";	
		for(c=0;c<5;c++)
		   for(l=0;l<5;l++)
		   {
		   	 Sl=Sl+mat[c][l];
		   	 if(l==4)
		   	 {
		   	 	vl[a++]=Sl;
		   	 	Sl=0;
		   	 }
		   }
		 	saida+=" A soma das linhas é:\n";
		for(x=0;x<5;x++)
		{
			saida+=vl[x]+"\n";
		}
//********************************************************fim da letra c*****************************************************************************
saida+="Transpondo a Matriz \n";

  // Minha grande dúvida alguém me ajude tenho que fazer isso o mais rapido possivel!
   
		  
		saidat.setText(saida);
		JOptionPane.showMessageDialog(null,resultado);
		

	}
}