Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

rojaum

matriz

Recommended Posts

bem tem-se uma matriz 3x3 na qual se pede:escrever a matriz e entao:a - escrever a soma dos elementos da primeira coluna;b - escrever o produto dos elementos da primeira linha;c - escrever a soma de todos os elementos da matriz; d - escrever a soma da diagonal principal.se alguem puder ajudar... :rolleyes: abraço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Program matriz_qtype matrizz = array[1..3,1..3] of integer;var matriz: matrizz; i,j: integer;begin  for i := 1 to 3 do   for j := 1 to 3 do	begin	 writeln('informe os valores da matriz: ', i, ' x ', j);	 readln(matriz[i,j]);	end;	writeln;	writeln('***Grafico da Matriz***');	for i:= 1 to 3 do	 begin	  for j:=1 to 3 do	   write(matriz[i,j], ' | ');	   writeln;	 end;	 writeln;	 writeln('***Soma da primeira coluna***');	 for i:=1 to 3 do	  begin	   for j:=1 to 3 do		if (i+1=i+j) then		 write(matriz[i,j]+matriz[i,j], ' |');		 writeln;	  end;	  writeln;	  writeln('***Produto da primeira linha***');	  for i:=1 to 3 do	   begin		for j:=1 to 3 do		 if (j=i+j-1) then		  write(matriz[i,j]*matriz[i,j], ' | ');		  writeln;	   end;	  writeln;	  writeln('***Soma de todos os elementos***');	  for i:=1 to 3 do	   begin		for j:=1 to 3 do		 write(matriz[i,j]+matriz[i,j], ' | ');		 writeln;	   end;	   writeln;	   writeln('***Soma da diagonal principal***');	   for i:=1 to 3 do		begin		 for j:=1 to 3 do		  if i=j then		   write(matriz[i,j]+matriz[i,j], ' | ');		   writeln;		end;		readln;		readln;end.

acabei de fazer dessa forma...pelo jeito esta certo..

se tiverem alguma sugestao..

http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

DESCONSIDEREM ISTO... FOI UM MAL ENTENDIDO...ESTA MINHA COLOCAÇAO NAO VEM AO CASO DESDE TOPICO..MAS VALE PARA POST's EM Q O CARA POSTA EM BUSCA DE UM CODIGO PRONTOgalernha!!! pq dar o codigo fonte.. assim.. d bandeja????Expliquem a logica passo a passo.. deixem o cara quebrar a kbça.. foi assim q agnt aprendeu.. se matando..Aqueles que procuram este forum devem ter pelo menos o algoritmo desenvolvido e apenas divulgar a sua duvida...eu me recusaria a passaria a passar um fonte desse...mas de qualquer forma... parabens ao rojaum pela sua solidariedade..flw..

Compartilhar este post


Link para o post
Compartilhar em outros sites

ehehe...foi mals...mas pelo jeito o codigo deve ta certo...hehehe =Do algoritmo eu tinha desenvolvido porem dava erro ao desenhar as matrizes e tambem nos calculos de soma e produto...a duvida mesmo era nos comparativos para soma da coluna na qual utilizei a linha..."if (i+1=i+j) then" para pegar somente a soma da 1ª coluna e "if (j=i+j-1) then" para o produto da 1ª linha, mas creio que realmente esteja correto e acho que funciona para as demais matrizes que tiverem espalhadas por ae.e como estou aprendendo agora (e apanhando d+++) estou tendo uma certa empolgação, mas tambem uma certa impaciencia (o que nao ajuda, hehe)...mas a onda é essa mesmo...quebrar a cabeça e seguir a logica do negocioabraços!

Compartilhar este post


Link para o post
Compartilhar em outros sites

ow rojaum... foi mals tb..

naum vi q você era o dono da questao..

achei q era um outro cara q pediu o codigo e você postou...

 

mas vamos as correçoeszinhas...

 

(***** GRAFICO MATRIZ ******)

na linha

write(matriz[i,j], ' | ');
experimente colocar assim:

write(matriz[i,j]:3, ' | ');
isto fara uma tabulaçao de tres caracteres...

 

(***** SOMA PRIMEIRA COLUNA ******)

ow... pelo q entendi do exercicio, naum eh soh pra somar e escrever a soma da primeira coluna??

se for isso faz o seguinte..

você tem q a primeira coluna o indice eh fixo.. soh vai mudar as linhas

matriz[i,1]
faz um peqno laço:

 

somaCOLUNA := 0;for i:=1 to 3 do  somaCOLUNA := somaCOLUNA + matriz[i][1];writeln('SOMA 1a. COLUNA =',soma);

(***** PRODUTO DA PRIMEIRA LINHA ******)

mesma coisa... você tera q fazer o seguinte calculo:

prodLINHA := matriz[1,1] * matriz[1,2]*matriz[1,3];

mas pra fzer bonitinho, faz isso utilizando um loop:

 

prodLINHA := 1;for i := 1 to 3 do  prodLINHA := prodLINHA * matriz[1,i];writeln('PRODUTO 1a. LINHA = ',prodLINHA);

(***** SOMA TODOS ELEMENTOS ******)

ow .. acho q o exercicio ta pedindo p somar todos os elementos e imprimir na tela a soma total, nao?

se for isso entao vamos..

soh coloque uma variavel (soma por exemplo) somando elemento por elemento..

 

soma := 0;for i:=1 to 3 do  for j:=1 to 3 do	 soma := soma + matriz[i,j];writeln('SOMA DE TODOS OS ELEMENTOS = ',soma);

(***** SOMA DIAGONAL *******)

sera q naum eh soh pra somar a diagonal principal???

você fez certo soh q naum somou a diag principal.. você somou um elemento dela com ele mesmo...

soma := 0;for i:=1 to 3 do	for j:=1 to 3 do		if i=j then		   soma := soma + matriz[i,j];writeln('SOMA DIAGONAL PRINCIPAL = ',soma);

ow... espero ter ajudado...

e desculpa o mal entendido...

 

td d bom

Compartilhar este post


Link para o post
Compartilhar em outros sites

vlw novamente ;)realmente confundi, estava somando uma matriz com outra...e nao os elementosvlw ricci! :lol:

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.