VisualgMaster
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
VisualgMaster

Bem vindo ao fórum visualgmaster, tudo relacionado ao visualg, tire suas dúvidas, resolva seus algoritmos.
 
InícioInício  PortalPortal  ProcurarProcurar  Últimas imagensÚltimas imagens  RegistarRegistar  Entrar  

 

 Matriz quadrada

Ir para baixo 
4 participantes
AutorMensagem
guga22
Iniciante
Iniciante



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

Matriz quadrada Empty
MensagemAssunto: Matriz quadrada   Matriz quadrada Icon_minitimeQua Nov 21, 2007 10:41 am

Escreva um subalgoritmo que verifica se uma matriz é ou não simétrica.
Eu não sei como fazer esse algoritmo
Ir para o topo Ir para baixo
Admin
Administradores
Administradores
Admin


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

Matriz quadrada Empty
MensagemAssunto: Re: Matriz quadrada   Matriz quadrada Icon_minitimeQua Nov 21, 2007 11:30 am

O que seria subalgoritmo? Sub-rotina?


Última edição por Admin em Ter Jun 24, 2008 6:15 pm, editado 1 vez(es)
Ir para o topo Ir para baixo
https://visualgmaster.forumeiros.com
guga22
Iniciante
Iniciante



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

Matriz quadrada Empty
MensagemAssunto: Re: Matriz quadrada   Matriz quadrada Icon_minitimeQua Nov 21, 2007 11:32 am

Eu tambêm não sei o que e subalgoritmo
Mais esquecendo este conceito de subalgoritmo como eu faria para verificar se a matriz e simétrica e quadrada?
Ir para o topo Ir para baixo
Suporte
Administradores
Administradores
Suporte


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

Matriz quadrada Empty
MensagemAssunto: Re: Matriz quadrada   Matriz quadrada Icon_minitimeQua Nov 21, 2007 12:31 pm

Conceito de matriz transposta: as linhas se transformam em colunas e as colunas se transformam em linhas. Logo, se na matriz normal é M[a,i]...na transposta será M[i,a] sabendo disso podemos fazer um Se comparando cada elemento da matriz com ele transposto, algo como:

Se (M[a,i] = M[i,a]) entao
PosicoesIguais <- PosicoesIguais + 1

Agora você terá em um acumulador o número de posições iguais, e você sabe que essa matriz será simétrica se TODAS as posições forem iguais, então é só comparar esse acumulador com o número de posições da matriz, se for igual (ou seja, se todas as posições forem iguais), então é simétrica.

Lembre-se que o número de posições da matriz é
Linhas * Coluna

Por exemplo: uma matriz [1..3,1..3] tem 9 posições.
Ir para o topo Ir para baixo
guga22
Iniciante
Iniciante



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

Matriz quadrada Empty
MensagemAssunto: Re: Matriz quadrada   Matriz quadrada Icon_minitimeSáb Nov 24, 2007 9:25 am

Não entendi bem o que você quis dizer.
Mais uma Matriz e simetrica quando todos os elementos são iguais não é?
Ir para o topo Ir para baixo
Suporte
Administradores
Administradores
Suporte


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

Matriz quadrada Empty
MensagemAssunto: Re: Matriz quadrada   Matriz quadrada Icon_minitimeSáb Nov 24, 2007 12:23 pm

Matriz simétrica é quando uma matriz é igual à ela mesma transposta (invertida).
Ir para o topo Ir para baixo
guga22
Iniciante
Iniciante



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

Matriz quadrada Empty
MensagemAssunto: Re: Matriz quadrada   Matriz quadrada Icon_minitimeSáb Nov 24, 2007 2:00 pm

Ta vou tentar fazer
Ir para o topo Ir para baixo
gfilho
Novato
Novato



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

Matriz quadrada Empty
MensagemAssunto: Re: Matriz quadrada   Matriz quadrada Icon_minitimeSáb Nov 24, 2007 4:08 pm

Guga, se voce fizer esse algoritmo declarando duas matrizes ficara muito facil de resolver.


--Faca a declaracao de duas matriz, por exemplo: A e B

--Gere a matriz a Matriz A, e em seguida, faca a matriz B receber a transposta de A, ou seja, o elemento A[i,j] vai ser igual ao elemento B[j,i]. Por exemplo:
+ Suponha que o elemento A[2,1] seja igual a 3, logo o elemento B[1,2] sera igual a 3. Como fazer isso?
+ Simples, faca a leitura do elemento, Leia (A[i,j]), e em seguida faca B[j,i] <- A[i,j], pronto, ao terminar o looping de leitura a matriz B, transposta de A, ja estara formada.

--Depois de a matriz A ja ter sido toda lida e a matriz B ter recebido a transposta de A basta comparar a matriz A com a matriz B. Para ser simetrica a matriz A tem que ser igual a sua transposta, nesse caso B. Logo, A e B tem que ser iguais. Use uma variavel com um valor fixo, que so sera alterado caso seja encontrado algum elemento A[i,j] diferente do elemento B[i,j] correspondente.
Ir para o topo Ir para baixo
guga22
Iniciante
Iniciante



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

Matriz quadrada Empty
MensagemAssunto: Re: Matriz quadrada   Matriz quadrada Icon_minitimeQua Nov 28, 2007 10:51 am

Não entendi esta parte aqui daria para explicar melhor?

Depois de a matriz A ja ter sido toda lida e a matriz B ter recebido a transposta de A basta comparar a matriz A com a matriz B. Para ser simetrica a matriz A tem que ser igual a sua transposta, nesse caso B. Logo, A e B tem que ser iguais. Use uma variavel com um valor fixo, que so sera alterado caso seja encontrado algum elemento A[i,j] diferente do elemento B[i,j] correspondente.
Ir para o topo Ir para baixo
guga22
Iniciante
Iniciante



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

Matriz quadrada Empty
MensagemAssunto: Re: Matriz quadrada   Matriz quadrada Icon_minitimeQua Nov 28, 2007 10:51 am

O começo do meu algoritmo esta assim:

algoritmo "Matriz transposta"
//Função:
// Data : 28/11/07
// Seção de Declarações
var
matA : vetor [1..2,1..4] de real
matB : vetor [1..4,1..2] de real
i, j, p : inteiro //os índice sempre inteiro
inicio
// Seção de Comandos
p <- 1
enquanto (p=1) faca

Para i de 1 ate 2 passo 1 faca
Para j de 1 ate 4 passo 1 faca
escreva("Digite um valor do elemento da linha" , i, ", coluna ",j, " da matriz A: ")
leia (matA[i,j])
matB[j,i] <- matA[i,j]
fimpara
fimpara
escreval

escreva("A matriz A é:")
escreval
para i de 1 ate 2 passo 1 faca
escreval
para j de 1 ate 4 passo 1 faca
escreva (matA[i,j], " ")
fimpara
fimpara
escreval

Escreva("A matriz B é:")
escreval
Para i de 1 ate 4 passo 1 faca
escreval
para j de 1 ate 2 passo 1 faca
escreva (matB[i,j]," ")
fimpara
fimpara
escreval

escreval("Deseja continuar (1)Sim (2)Não")
leia(p)
fimenquanto

fimalgoritmo
Ir para o topo Ir para baixo
gfilho
Novato
Novato



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

Matriz quadrada Empty
MensagemAssunto: Re: Matriz quadrada   Matriz quadrada Icon_minitimeQui Nov 29, 2007 3:07 pm

Citação :
Não entendi esta parte aqui daria para explicar melhor?

Depois de a matriz A ja ter sido toda lida e a matriz B ter recebido a transposta de A basta comparar a matriz A com a matriz B. Para ser simetrica a matriz A tem que ser igual a sua transposta, nesse caso B. Logo, A e B tem que ser iguais. Use uma variavel com um valor fixo, que so sera alterado caso seja encontrado algum elemento A[i,j] diferente do elemento B[i,j] correspondente.
´

Isso e o metodo da contradicao. Tipo, apos a matriz B ja ter recebido todos os valores de A, ou seja, apos B ser a transposta de A, voce pode usar o metodo da contradicao, exemplo:

simetrica <- 1
para i de 1 ate 4 faca
para j de 1 ate 4 faca
se (A[i,j]<>B[j,i]) entao
simetrica <- 0
fimse
fimpara
fimpara
Se (simetrica=1) entao
escreva ("a matriz e simetrica")
senao
escreva ("a matriz nao e simetrica")
fimse


--VIu?? voce procurar algo que possa provar que a matriz nao e simetrica, neste caso seria A[i,j]<>B[j,i]
Ir para o topo Ir para baixo
guga22
Iniciante
Iniciante



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

Matriz quadrada Empty
MensagemAssunto: Re: Matriz quadrada   Matriz quadrada Icon_minitimeQui Nov 29, 2007 11:14 pm

Vou tentar fazer depois eu volto a postar aqui
Ir para o topo Ir para baixo
Conteúdo patrocinado





Matriz quadrada Empty
MensagemAssunto: Re: Matriz quadrada   Matriz quadrada Icon_minitime

Ir para o topo Ir para baixo
 
Matriz quadrada
Ir para o topo 
Página 1 de 1
 Tópicos semelhantes
-
» Media matriz 2
» Matriz e Vetor
» Duvida matriz
» Media matriz
» Matriz Visualg

Permissões neste sub-fórumNão podes responder a tópicos
VisualgMaster :: VisualgMaster :: Pedidos de algoritmos :: Algoritmos resolvidos-
Ir para: