rojaum 0 Denunciar post Postado Abril 22, 2006 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
rojaum 0 Denunciar post Postado Abril 22, 2006 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
ricci ottadnot 4 Denunciar post Postado Abril 22, 2006 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
rojaum 0 Denunciar post Postado Abril 22, 2006 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
ricci ottadnot 4 Denunciar post Postado Abril 22, 2006 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
rojaum 0 Denunciar post Postado Abril 22, 2006 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