Anda di halaman 1dari 4

FACULDADE DE COMPUTAO E INFORMTICA

BACHARELADOS EM CINCIA DA COMPUTAO E SISTEMAS DE INFORMAO E


TECNOLOGIA EM ANLISE E DESENVOLVIMENTO DE SISTEMAS
Introduo Programao Aula 18 2 semestre/2014

TEORIA: MATRIZES
Nossos objetivos nesta aula so:

Identificar, na proposio de um problema, qual ou quais


variveis devero ser definidas.
Entender os conceitos sobre variveis compostas
multidimensionais ou matriz.
Abstrair, projetar e construir algoritmos/ programas para:
o Definir e criar matriz bidimensional.
o Carregar dados em matriz e acessar seu contedo.
o Associar matrizes e vetores.

FORBELLONE, A. L. V.; EBERSPACHER, H. F. Lgica de Programao:


A Construo de Algoritmos e Estrutura de Dados. 3. ed. So
Paulo: Pearson Prentice Hall, 2012.

Na aula anterior aprendemos como utilizar uma varivel composta homognea


unidimensional, conhecida tambm como vetor.
Nesta aula vamos conhecer uma matriz. Uma matriz denominada varivel composta
homognea multidimensional, pois:
o Composta: formada por um nmero finito de variveis.
o Homognea: as variveis so de um mesmo tipo.
o Multidimensional: possui mais de uma dimenso.
Corresponde a posies de memria identificadas por um mesmo nome e individualizadas
por ndices, cujo contedo de um mesmo tipo de dados.
Neste momento vamos abordar a matriz bidimensional, constituda de linhas e colunas.

Os aplicativos do tipo planilhas eletrnicas so exemplos tpicos de matriz, onde temos


inmeras possibilidades de armazenamento e representao de dados e informaes, nas
interseces de linhas e colunas (clulas).
Uma representao visual de uma matriz dada na figura a seguir.
ndices

mat[1][1]

mat[1][2]

mat[1][3]

mat[1][4]

mat[1][5]

mat[2][1]

mat[2][2]

mat[2][3]

mat[2][4]

mat[2][5]

mat[3][1]

mat[3][2]

mat[3][3]

mat[3][4]

mat[3][5]

Uma matriz mat[3][5], ou seja, 3 linhas x 5 colunas


A declarao de uma matriz segue as mesmas regras sintticas para a definio de vetores,
alterando somente a dimenso dessa varivel, ou seja, o seu tamanho.
Ateno: em VisuAlg, o ndice da matriz comea em 1 e, em Java, comea em 0.
Declarao em VisuAlg
var
NomeMatriz: Vetor[1..LimiteLinha, 1..LimiteColuna] de TipoDado
NomeIndLin, NomeIndCol: Inteiro
Declarao em VisuAlg (exemplo)
var
MatNotas: Vetor[1..10, 1..3] de Real
IndLin, IndCol: Inteiro
Para realizar a atribuio de um valor a um determinado elemento da matriz, temos:
Atribuio em VisuAlg
NomeMatriz[NomeIndLin, NomeIndCol] Valor
Atribuio em VisuAlg (exemplos)
MatNotas[1,1] 7.5
Leia (MatNotas[5,3])
MatNotas[3,2] MatNotas[3,2] + 1.0

Para consultar ou mostrar dados contidos em matrizes, temos:


Mostrar um dado em VisuAlg
Escreval (NomeMatriz[NomeIndLin, NomeIndCol])
Mostrar em VisuAlg (exemplos)
Escreval (MatNotas[3,1])
Para i de 1 ate 10 passo 1 faca
Para j de 1 ate 3 passo 1 faca
Escreval (MatNotas[ i, j ])

EXERCCIO TUTORIADO
Escreva um algoritmo que crie uma matriz de, no mximo, 10 linhas e 4 colunas. Leia a
quantidade de linhas e colunas que a matriz ter. Preencha a matriz com nmeros inteiros.
Exiba o contedo da matriz na forma de tabela (linhas e colunas). Utilize funes e
procedimentos.

EXERCCIO COM DISCUSSO EM DUPLAS


Acrescente ao algoritmo anterior as seguintes funes/procedimentos:
- calcular a soma dos valores da linha primeira linha
- calcular a soma dos valores da ltima coluna
- determinar o maior valor da matriz
- calcular o valor mdio
Apresente os resultados obtidos dos clculos.

EXERCCIOS EXTRA-CLASSE
1. Elabore um algoritmo que gere uma matriz 4x4 (matriz quadrada) contendo nmeros
inteiros aleatrios de 1 a 50. Calcule e apresente a soma dos valores contidos na diagonal
principal (i = j).
Observao: para ativar a gerao de nmeros aleatrios no VisuAlg use o comando
aleatorio valor1, valor2 sendo valor1 e valor2 constantes numricas. Para desativar, use
aleatorio off.
2. Escreva um algoritmo que gere e exiba uma matriz 3x5, cujos elementos so inteiros
aleatrios de 0 a 30. Some cada uma das linhas, armazenando o resultado das somas em
um vetor. A seguir, o programa dever multiplicar cada elemento da matriz pela soma da
linha correspondente e mostrar a matriz resultante.
3. Elabore um algoritmo que leia o nome e duas notas de n (1<= n <=20) alunos. Calcular e
armazenar a mdia final de cada aluno (mdia aritmtica). Escreva o nome e a mdia final
do aluno e estabelea uma relao entre a mdia final do aluno e a mdia da turma.
Quando a mdia do aluno estiver acima da mdia da turma, escreva BOM ALUNO; se estiver
abaixo da mdia da turma, escreva ALUNO COM BAIXO DESEMPENHO, caso contrrio,
escreva ALUNO MDIO. Crie um vetor de nomes e uma matriz de notas e mdia.
4. Elabore um algoritmo que preencha um vetor com nomes de cinco produtos, uma matriz
5x4 com os preos dos cinco produtos em quatro lojas diferentes e, outro vetor com o custo
do transporte dos cinco produtos.
O algoritmo dever preencher uma segunda matriz 5x4 com os valores dos impostos de
cada produto, de acordo com a seguinte tabela:
PREO
at R$ 500,00
entre R$ 500,00 e R$ 1000,00
a partir de R$ 1000,00

% DE IMPOSTO
5
10
20

O algoritmo dever mostrar ainda um relatrio com o nome do produto, o nmero da loja
onde o produto encontrado, o valor do imposto a pagar, o custo do transporte, o preo e
o preo final (preo acrescido do valor do imposto e o custo do transporte).

Anda mungkin juga menyukai