Post on 20-Dec-2018
Exercício 1
• Dada uma matriz MAT de 4x5 elementos, faça um algoritmo para somar os elementos de cada linha gerando o vetor SOMALINHA. Em seguida, somar os elementos do vetor SOMALINHA na variável TOTAL, que deve ser impressa no final.
1
5
1
)4,3,2,1(j
iji iMATSOMALINHA
4
1
i
i
TOTAL SOMALINHA
1 0 2 -1 3
4 3 2 1 0
1 -2 3 4 5
8 5 1 3 2
5
10
11
19
45
Exemplo:
Exercício 1 – resolução
2
inteiro Mat[4][5]
inteiro SomaLinha[4]
inteiro total, i, j
total=0
para (i=0; i < 4; i++){
SomaLinha[i]=0
}
para (i=0; i < 4; i++){
para (j=0; j < 5; j++){
escreva(“Digite o valor do elemento da matriz:”)
leia(Mat[i][j])
SomaLinha[i] = SomaLinha[i] + Mat[i][j]
}
total = total + SomaLinha[i];
}
escreva(“O valor total é:”, total)
Exercício 2
• Escreva um algoritmo capaz de ler um conjunto de números inteiros e preencher uma matriz de 10x10. A partir daí, gere um vetor com os maiores elementos de cada linha e outro vetor com os menores elementos de cada coluna.
3
4
inteiro mat[10][10]
inteiro vlinha[10], vcoluna[10]
inteiro i, j, maior, menor
para (i=0; i < 10; i++){
para (j=0; j < 10; j++){
escreva(“Digite um número”)
leia(mat[i][j])
}
}
para (i=0; i < 10; i++){
maior=mat[i][0]
para (j=0; j < 10; j++){
se (mat[i][j] > maior){
maior=mat[i][j]
}
}
vlinha[i]=maior
}
para (j=0; j < 10; j++){
menor=mat[0][j]
para (i=0; i < 10; i ++){
se(mat[i][j] < menor){
menor=mat[i][j]
}
}
vcoluna[j]=menor
}
Exercício 2 – resolução
Exercício 3 • Escreva um algoritmo para:
– Ler uma matriz quadrada 20x20 de elementos reais;
– Dividir cada elemento de uma linha pelo elemento da diagonal principal desta linha;
– Imprimir a matriz modificada.
5
*
*
*
*
1 2 3 4
1
2
3
4
M[1,1]
M[2,2]
M[3,3]
M[4,4]
Elementos da diagonal principal
Exercício 4
• Escreva um algoritmo para a transposição de matrizes.
– Ele deve ser capaz de ler número inteiros para uma matriz 10x10 e depois girar seus elementos 90º no sentido horário, ou seja, a primeira coluna passa a ser a primeira linha e assim por diante.
7
11 12 13 14
21 22 23 24
31 32 33 34
41 42 43 44
11 21 31 41
12 22 32 42
13 23 33 43
14 24 34 44
Exercício 5
• Algoritmos de ordenação:
• Escreva um algoritmo para ordenar um vetor em ordem crescente.
9
Desafio: Multiplicação de matrizes!!
• Dadas duas matrizes 3x3, determinar seu produto
– R1,1 = A1,1*B1,1+A1,2*B2,1+A1,3*B3,1
– R1,2 = A1,1*B1,2+A1,2*B2,2+A1,3*B3,2
– R2,1 = A2,1*B1,1+A2,2*B2,1+A2,3*B3,1
– R3,1 = A3,1*B1,1+A3,2*B2,1+A3,3*B3,1
– R3,2 = A3,1*B1,2+A3,2*B2,2+A3,3*B,32
– R3,3 = A3,1*B1,3+A3,2*B2,3+A3,3*B3,3
11