1 / 12

Determinante

Determinante. Dada uma matriz A qualquer 2 x 2, calcular seu determinante. (5 x 3) – (2 x 4) = 15 – 8 = 7. ALGORITMO detm; VARIÁVEIS m : VETOR [1..2, 1..2] DE INTEIRO; i, j, det : INTEIRO; INÍCIO PARA i:=1 ATÉ 2 FAÇA PARA j:=1 ATÉ 2 FAÇA

kathie
Télécharger la présentation

Determinante

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Determinante • Dada uma matriz A qualquer 2 x 2, calcular seu determinante. (5 x 3) – (2 x 4) = 15 – 8 = 7

  2. ALGORITMO detm; VARIÁVEIS m : VETOR [1..2, 1..2] DE INTEIRO; i, j, det : INTEIRO; INÍCIO PARA i:=1 ATÉ 2 FAÇA PARA j:=1 ATÉ 2 FAÇA LER(m[i,j]); det:=m[1,1]*m[2,2] - m[1,2]*m[2,1]; ESCREVER('Determinante: ',det); FIM.

  3. Somar matrizes • Duas matrizes quadradas 5 x 5; • Cada elemento deve estar entre 0 e 99;

  4. ALGORITMO soma_m; VARIÁVEIS m1 : VETOR [1..5,1..5] DE INTEIRO; m2 : VETOR [1..5,1..5] DE INTEIRO; rs : VETOR [1..5,1..5] DE INTEIRO; i,j : INTEIRO; INÍCIO PARA i:=1 ATÉ 5 FAÇA INÍCIO ESCREVER('Linha ',i); PARA j:=1 ATÉ 5 FAÇA INÍCIO REPETIR ESCREVER('Elemento ', j,' de M1: '); LER(m1[i,j]); ATÉ (m1[i,j] >= 0) E (m1[i,j] <= 99); REPETIR ESCREVER('Elemento ', j,' de M2: '); LER(m2[i,j]); ATÉ (m2[i,j] >= 0) E (m2[i,j] <= 99); rs[i,j]:=m1[i,j]+m2[i,j]; FIM; FIM; PARA i:=1 ATÉ 5 FAÇA PARA j:=1 ATÉ 5 FAÇA ESCREVER(rs[i,j]); FIM.

  5. Matriz transposta • Dada uma matriz A qualquer n x m, obter sua transposta At; • Os elementos da matriz A devem estar na faixa de 0 até 999.

  6. ALGORITMO transposta; VARIÁVEIS a : VETOR[1..100, 1..100] DE INTEIRO; b : VETOR[1..100, 1..100] DE INTEIRO; i,j,n,m : INTEIRO; INÍCIO ESCREVER('Quantas linhas? = '); LER(n); ESCREVER('Quantas colunas? = '); LER(m); PARA i:= 1 ATÉ n FAÇA PARA j:=1 ATÉ m FAÇA INÍCIO REPETIR ESCREVER('Linha ',i,' Coluna ',j,' = '); LER(a[i,j]); ATÉ (a[i,j] >= 0) E (a[i,j]<=999); b[j,i]:=a[i,j]; FIM; ESCREVER; PARA i:= 1 ATÉ m FAÇA INÍCIO ESCREVER; PARA j:=1 ATÉ n FAÇA ESCREVER(b[i,j]:3,' '); FIM; FIM.

  7. Distância entre cidades • Considere a necessidade de conhecer, para consultar posteriormente, a distância entre 7 cidades quaisquer; • Devemos pensar que a matriz resultante será constituída pelas mesmas referências em linha e coluna, ou seja, tanto linhas quanto colunas representam as mesmas cidades

  8. Obs: Distâncias fictícias – Jdi = Jundiaí, SP =São Paulo, Cps = Campinas Itb = Itatiba, Vza = Várzea Paulista, Brg = Bragança Paulista

  9. Passos para construção • Zerar as distâncias entre cidades iguais: não existe qualquer distância entre uma cidade e ela mesma; • Cadastrar as distâncias: entrar com os valores referentes às distâncias entre uma cidade e outra. Neste processo, convém observar que a matriz representada acima forma dois “triângulos” divididos por uma “reta” diagonal: os dois “triângulos” são exatamente iguais, desde que se considere um “de ponta cabeça” em relação ao outro. Assim, não é necessário cadastrar duas vezes a mesma distância, ou seja, a distância entre São Paulo e Itu é a mesma que aquela entre Itu e São Paulo; • Consultar as distâncias cadastradas: pode haver um número virtualmente ilimitado de consultas de distâncias entre duas cidades, sob controle do usuário, considerando números válidos que identificam as cidades (de 1 até 7, sendo, no exemplo acima, 1 = Jundiaí, 2 = São Paulo, 3 = Campinas, 4 = Itu, 5 = Itatiba, 6 = Várzea Paulista, 7 = Bragança Paulista).

  10. ALGORITMO trip; VARIÁVEIS cd : VETOR [1..7,1..7] DE INTEIRO; i,j : INTEIRO; cont : CARACTER; INÍCIO PARA i:=1 ATÉ 7 FAÇA cd[i,i]:=0; PARA i:=1 ATÉ 7 FAÇA INÍCIO ESCREVER('Distancias desde Cidade ',i); PARA j:=i+1 ATÉ 7 FAÇA INÍCIO ESCREVER('Ate Cidade ', j, ' = '); LER(cd[i,j]); {parte de CIMA da matriz} cd[j,i]:=cd[i,j];{parte de BAIXO da matriz} FIM; FIM; ESCREVER(‘Consultar distancias? : ’);LER(cont); ENQUANTO (MAIÚSCULA(cont)='S') FAÇA INÍCIO REPETIR ESCREVER('Origem : '); LER(i); ATÉ (i > 0 E i <= 7); REPETIR ESCREVER('Destino : '); LER(j); ATÉ (j > 0 E j <= 7); ESCREVER('Distancia : ', cd[i,j]); ESCREVER('Continua? : ');LER(cont); FIM; FIM.

  11. Notas e médias • Construir um algoritmo para armazenar a nota de 5 alunos em 3 disciplinas. Armazenar, também, na matriz, a média por aluno e por disciplina.

  12. ALGORITMO notas; VARIÁVEIS classe : VETOR [1..6, 1..4] DE REAL; i,j : INTEIRO; INÍCIO classe[6,1]:=0;classe[6,2]:=0;classe[6,3]:=0; PARA i:= 1 ATÉ 5 FAÇA INÍCIO classe[i,4]:=0; PARA j:=1 ATÉ 3 FAÇA INÍCIO ESCREVER(‘Nota do aluno ',i); ESCREVER('Materia: ', j); LER(classe[i,j]); classe[i,4]:=classe[i,4]+classe[i,j]/3; classe[6,j]:=classe[6,j]+classe[i,j]/5; FIM; FIM; PARA i:=1 ATÉ 5 FAÇA ESCREVER('Aluno ',i,' = ', classe[i,4]); ESCREVER('Media das disciplinas'); PARA j:=1 ATÉ 3 FAÇA ESCREVER('Disciplina ',j,' = ', classe[6,j]); FIM.

More Related