VisualgMaster

Bem vindo ao fórum visualgmaster, tudo relacionado ao visualg, tire suas dúvidas, resolva seus algoritmos.
 
InícioInício  PortalPortal  FAQFAQ  BuscarBuscar  Registrar-seRegistrar-se  MembrosMembros  GruposGrupos  Conectar-se  

Compartilhe | 
 

 Media matriz 2

Ver o tópico anterior Ver o tópico seguinte Ir em baixo 
AutorMensagem
guga22
Iniciante
Iniciante


Número de Mensagens : 175
Data de inscrição : 27/10/2007

MensagemAssunto: Media matriz 2   Sex Nov 16, 2007 11:17 am

Faça um algoritmo que receba, por parâmetro, uma matriz A(5,5) e retorna a média aritmética dos elementos abaixo da diagonal principal e da diagonal secundária.

Eu consegui apenas fazer a media dos elementos abaixo da Diagonal Principal mais da diagonal secundária eu não consegui fazer

algoritmo
// Data : 30/10/07
// Seção de Declarações
var
matA : vetor [1..5,1..5] de real
i, j: inteiro //os índice sempre inteiro
s,c, k, w : real
mp, ms : real
inicio
// Seção de Comandos
s <- 0
c <- 0
k <- 0
w <- 0
Para i de 1 ate 5 faca
Para j de 1 ate 5 faca
escreva("Digite um valor do elemento da linha" , i, ", coluna ",j, " da matriz A: ")
leia (matA[i,j])

se (i > j) entao
s <- s + matA[i,j]
c <- c + 1
fimse

se (j=4-i) entao
k <- k + matA[i,j]
w <- w + 1
fimse

fimpara
fimpara
escreval
mp <- s/c
ms <- k/w

escreva("A matriz A é:")
escreval
para i de 1 ate 5 faca
escreval
para j de 1 ate 5 faca
escreva (matA[i,j]," ")
fimpara
fimpara
escreval
escreval("A media dos elementos abaixo da diagonal principal eh =",mp)
escreval("A media dos elementos acima da diagonal secundaria eh =",ms)

fimalgoritmo
Voltar ao Topo Ir em baixo
Ver perfil do usuário
gfilho
Novato
Novato


Masculino
Número de Mensagens : 39
Idade : 28
Localização : Rio Branco
Data de inscrição : 15/11/2007

MensagemAssunto: Re: Media matriz 2   Sex Nov 16, 2007 2:26 pm

Guga, primeiramente queria te dar uns conselhos a respeito da nomeclatura das variaveis.

-Primeiro: De nome as variaveis de modo que facilite a leitura do algoritmo pelas demais pessoas e ate mesmo por voce.

Ex: X <- Y + Z //dificil de intender ne?
CUSTO <- PRECO + DESPESAS //bem mais facil de intender certo??

--> No seu algoritmo temos: s, c, k, w, mp, ms
--> Futuramente voce mesmo, caso fosse analisar seu algoritmo, poderia ter dificuldade de intender o que essas variaveis representam, veja se nao ficaria mais facil intender caso trocasse os nomes das variaveis, por exemplo:

nome_antigo --> nome_novo

s --> somatorioA
c --> contadorA

k --> somatorioB
w --> contadorB

--Segundo: lembre-se de por comentarios, nao somente para as variaves com tambem para as demais partes do algoritmo. Pegando o seu algoritmo como exemplo, imagine que no inicio, quando voce inicio as variaves s, c, k, w voce tivesse colocados os seguintes comentarios:

s <- 0 //Recebe somatorio dos elementos da diagonal principal
c <- 0 //Faz a contagem dos elementos da diagonal principal
k <- 0 //Recebe somatorio dos elementos da diagonal secundaria
w <- 0 //Faz a contagem dos elementos da diagonal secundaria

--Viu?? Ficaria mais facil de intender certo??

Vamos agora ao seu algoritmo:
---------------------------------------------------------------------------
Matriz de ordem 5:

a11 a12 a13 a14 a15
a21 a22 a23 a24 a25
a31 a32 a33 a34 a35
a41 a42 a43 a44 a45
a51 a52 a53 a54 a55

--Elementos abaixo da diagonal principal, ja sabemos que temos a relacao: i > j

--Temos que encontrar um comportamento em comum entre os elementos abaixo da diagonal secundaria. Voce colocou em seu algoritmo:

se (j=4-i) entao
k <- k + matA[i,j]
w <- w + 1
fimse

por que j = 4 - i?? nao consegui chegar a essa conclusao, pois pegando o elemento a52, Se fizermos j = 4 - i teremos 4 - 5 = -1 ?? Voce precisa encontrar outra solucao, pois esta parece estar errada.

Estou tentando encontrar alguma relacao entre esses elementos, caso eu encontre posterei aqui para voce.

A respeito de como voce fez o algoritmo parece esta tudo certinho, tendo que mudar apenas a condicao dos elementos abaixo da diagonal secundaria.

abracos..
Voltar ao Topo Ir em baixo
Ver perfil do usuário
guga22
Iniciante
Iniciante


Número de Mensagens : 175
Data de inscrição : 27/10/2007

MensagemAssunto: Re: Media matriz 2   Sab Nov 17, 2007 9:22 am

E fazendo assim:
j+i = 4?
Esta certo?
Voltar ao Topo Ir em baixo
Ver perfil do usuário
gfilho
Novato
Novato


Masculino
Número de Mensagens : 39
Idade : 28
Localização : Rio Branco
Data de inscrição : 15/11/2007

MensagemAssunto: Re: Media matriz 2   Sab Nov 17, 2007 1:46 pm

Guga, creio q nao tambem.
Observa bem os elementos abaixo da diagonal secundaria..

Os elementos abaixo da diagonal secundaria sao os seguintes:

--> a25, a34, a35, a43, a44, a45, a52, a53, a54, a55

Podemos claramente ver que a condicao "j+i=4" não esta correta, pois nenhum dos elementos satisfazem tal condicao.

a25 --> 5 + 2 = 7 , errado
a55 --> 5 + 5 = 10, errado =)

Conseguiu observar?

Estou tentando encontrar uma solucao para voce, caso eu encontre posto aqui, mas nao desista. =)
Voltar ao Topo Ir em baixo
Ver perfil do usuário
guga22
Iniciante
Iniciante


Número de Mensagens : 175
Data de inscrição : 27/10/2007

MensagemAssunto: Re: Media matriz 2   Sab Nov 17, 2007 2:59 pm

Vamos continuar tentando
Voltar ao Topo Ir em baixo
Ver perfil do usuário
guga22
Iniciante
Iniciante


Número de Mensagens : 175
Data de inscrição : 27/10/2007

MensagemAssunto: Re: Media matriz 2   Dom Nov 18, 2007 2:32 pm

E esto aqui resolve?
i+j = n+1
Substituindo n por algum valor?
Abraços
Voltar ao Topo Ir em baixo
Ver perfil do usuário
gfilho
Novato
Novato


Masculino
Número de Mensagens : 39
Idade : 28
Localização : Rio Branco
Data de inscrição : 15/11/2007

MensagemAssunto: Re: Media matriz 2   Dom Nov 18, 2007 4:27 pm

que valor seria esse??
esse valor d n teria q mudar d acordo com o elemento..
axo q nao funciona nao..

;//

pergunte pra algum professor de matematica se ele sabe ql a relacao entre esses elementos. qm sabe ele ajude.
Voltar ao Topo Ir em baixo
Ver perfil do usuário
guga22
Iniciante
Iniciante


Número de Mensagens : 175
Data de inscrição : 27/10/2007

MensagemAssunto: Re: Media matriz 2   Seg Nov 19, 2007 8:46 am

Olha esta relação aqui

Agora esta certo

i+j>5

Olha esta informação

A diagonal secundária é identificada pela soma dos índices i + j resultando em 6 no caso da matriz 5x5.
Voltar ao Topo Ir em baixo
Ver perfil do usuário
gfilho
Novato
Novato


Masculino
Número de Mensagens : 39
Idade : 28
Localização : Rio Branco
Data de inscrição : 15/11/2007

MensagemAssunto: Re: Media matriz 2   Seg Nov 19, 2007 2:00 pm

Boa guga, voce pensou legal agora, mas essa condicao tem um pequeno problema:

Se voce colocasse i+j>5 ele pegaria os elementos da diagonal secundaria tambem, e voce so quer os abaixo da diagonal secundaria. Observe:

Elementos da diagonal secundaria:
a15 --> 1 + 5 = 6 > 5
a24 --> 2 + 4 = 6 > 5
a33 --> 3 + 3 = 6 > 5
a42 --> 4 + 2 = 6 > 5
a51 --> 5 + 1 = 6 > 5

Viu? Todos os elementos da diagonal principal tambem seria aceitos pela condicao i + j > 5

-A condicao que voce tem que usar, para pegar somente os elementos abaixo da diagonal secundaria, sera a seguinte:

i + j > 6 ou
i + j >= 6

Desta forma, os elementos da diagonal secundaria nao irao satisfazer a condicao e consequentemente ficaram de fora =)

abracos
Voltar ao Topo Ir em baixo
Ver perfil do usuário
guga22
Iniciante
Iniciante


Número de Mensagens : 175
Data de inscrição : 27/10/2007

MensagemAssunto: Re: Media matriz 2   Seg Nov 19, 2007 7:38 pm

Problena então resolvido?
Posso pedir para o administrador trancar o tópico?
Abraços
Voltar ao Topo Ir em baixo
Ver perfil do usuário
gfilho
Novato
Novato


Masculino
Número de Mensagens : 39
Idade : 28
Localização : Rio Branco
Data de inscrição : 15/11/2007

MensagemAssunto: Re: Media matriz 2   Seg Nov 19, 2007 7:46 pm

Creio que sim, antes de pedir pra trancarem o tópico poste aqui o resultado pra quem quizer ver e dar sua opniao e testr o algoritmo tambem com valores aleatorios (sempre fazendo o acompanhamento para ver se esta tudo certo). Caso esteja tudo certinho ai sim pode pedir para trancar o topico.
Voltar ao Topo Ir em baixo
Ver perfil do usuário
guga22
Iniciante
Iniciante


Número de Mensagens : 175
Data de inscrição : 27/10/2007

MensagemAssunto: Re: Media matriz 2   Seg Nov 19, 2007 8:02 pm

Deu certo com valores aleatórios
Coloquei valores aleatórios e mudei o tamanho da matriz para ver se funcionava e deu certo
Abraços
Voltar ao Topo Ir em baixo
Ver perfil do usuário
guga22
Iniciante
Iniciante


Número de Mensagens : 175
Data de inscrição : 27/10/2007

MensagemAssunto: Re: Media matriz 2   Seg Nov 19, 2007 8:04 pm

O algoritmo para quem quiser e este aqui

algoritmo "Media elementos diagonal principal e secundaria"
//Função:
//Autor: Gustavo Rodrigues Torre
// Data :19/11/07
// Seção de Declarações
var
matA : vetor [1..5,1..5] de real
i, j: inteiro //os índice sempre inteiro
s,c, k, w : real
//s: somatorioA
//c: Contagem dos elementos da DP
//k: somatorioB
//w: Contagem dos elementos da DS
mp, ms : real
inicio
// Seção de Comandos
s <- 0 //Recebe somatorio dos elementos da diagonal principal
c <- 0 //Faz a contagem dos elementos da diagonal principal
k <- 0 //Recebe somatorio dos elementos da diagonal secundaria
w <- 0 //Faz a contagem dos elementos da diagonal secundaria

Para i de 1 ate 5 faca
Para j de 1 ate 5 faca
escreva("Digite um valor do elemento da linha" , i, ", coluna ",j, " da matriz A: ")
leia (matA[i,j])

se (i > j) entao
s <- s + matA[i,j]
c <- c + 1
fimse

se (i+j>=6) entao
k <- k + matA[i,j]
w <- w + 1
fimse

fimpara
fimpara
escreval
mp <- s/c
ms <- k/w

escreva("A matriz A é:")
escreval
para i de 1 ate 5 faca
escreval
para j de 1 ate 5 faca
escreva (matA[i,j]," ")
fimpara
fimpara
escreval
escreval("A media dos elementos abaixo da diagonal principal eh =",mp)
escreval("A media dos elementos acima da diagonal secundaria eh =",ms)

fimalgoritmo
Voltar ao Topo Ir em baixo
Ver perfil do usuário
guga22
Iniciante
Iniciante


Número de Mensagens : 175
Data de inscrição : 27/10/2007

MensagemAssunto: Re: Media matriz 2   Seg Nov 19, 2007 8:05 pm

Administradores isto e permitido deixar o algoritmo pronto para outras pessoas?
Voltar ao Topo Ir em baixo
Ver perfil do usuário
guga22
Iniciante
Iniciante


Número de Mensagens : 175
Data de inscrição : 27/10/2007

MensagemAssunto: Re: Media matriz 2   Seg Nov 19, 2007 8:29 pm

E por favor administradores agora o problema esta finalmente resolvido portanto podem trancar o tópico
Voltar ao Topo Ir em baixo
Ver perfil do usuário
Admin
Administradores
Administradores
avatar

Número de Mensagens : 126
Data de inscrição : 26/10/2007

MensagemAssunto: Re: Media matriz 2   Seg Nov 19, 2007 9:14 pm

Poder pode até porque será muito difícil duas pessoas querendo o mesmo algoritmo, ajudará a muitas pessoas.

_________________
Equipe VisualgMaster.
Voltar ao Topo Ir em baixo
Ver perfil do usuário http://visualgmaster.livreforum.com
gfilho
Novato
Novato


Masculino
Número de Mensagens : 39
Idade : 28
Localização : Rio Branco
Data de inscrição : 15/11/2007

MensagemAssunto: Re: Media matriz 2   Seg Nov 19, 2007 9:49 pm

Boa guga.. creio que nao tenha problema nao postar o algoritmo pronto ai.. Ja que discutimos aqui todo o desenvolvimento do mesmo.

abracos.
Voltar ao Topo Ir em baixo
Ver perfil do usuário
Conteúdo patrocinado




MensagemAssunto: Re: Media matriz 2   

Voltar ao Topo Ir em baixo
 
Media matriz 2
Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo 
Página 1 de 1
 Tópicos similares
-
» Go Media Arsenal - Complete Photoshop Brush Sets 1-14
» [Aula] Array e Matriz em GML
» Expandir o Game Maker com essa LIB de media player
» Colocar media player
» VPN PPTP com 1 matriz e 2 filial ?

Permissão deste fórum:Você não pode responder aos tópicos neste fórum
VisualgMaster :: VisualgMaster :: Pedidos de algoritmos :: Algoritmos resolvidos-
Ir para: