Buscar

Linguagem de Programação I Aula 07 (Original)

Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original

LINGUAGEM DE PROGRAMAÇÃO I
Aula 7- Matrizes Bidimensionais: Agrupando para simplificar 
Conteúdo Programático desta aula
Declarar matrizes bidimensionais;
Trecho de atribuição;
Trecho de entrada;
Trecho de saída ;
Entendendo a matriz de char e algumas funções.
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
MATRIZES BIDIMENSIONAIS
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Operação - somar duas matrizes
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Operação - somar colunas da linha
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Operação - somar colunas da linha
Resulta em uma matriz 4x1
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Operação - somar colunas da linha
Resulta em uma matriz 4x1
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Operação - somar linhas da coluna
Resulta em uma matriz 1x3
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Operação - somar linhas da coluna
Resulta em uma matriz 1x3
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Operação: multiplicar duas matrizes
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Operação: multiplicar duas matrizes
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Operação: multiplicar duas matrizes
X
linha 1 x coluna 1
linha 1 x coluna 1
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Operação: multiplicar duas matrizes
X
1
linha 1 x coluna 1
linha 1 x coluna 1
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Operação: multiplicar duas matrizes
X
1
X
linha 1 x coluna 2
linha 2 x coluna 1
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Operação: multiplicar duas matrizes
X
1
X
4
linha 1 x coluna 2
linha 2 x coluna 1
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Operação: multiplicar duas matrizes
X
1
X
4
+
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Operação: multiplicar duas matrizes
X
1
X
4
+
5
linha 1 x coluna 1
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Dimensionando Matrizes Bidimensionais
int
float/ double
char, ...
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Armazenamento na MP
Matriz do tipo float com 5 linhas e 4 colunas que deverá armazenar três notas e a média, totalizando 20 variáveis
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
O nome de uma matriz corresponde ao primeiro endereço do conjunto de endereços da Memória Principal. 
Para nos deslocarmos entre linhas e localizarmos o primeiro endereço de uma linha da matriz, usamos a expressão abaixo.
Armazenamento na MP
Endereço base + número de colunas da matriz * deslocamento linha * número de bytes do tipo
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Para nos deslocarmos entre colunas de uma linha e localizarmos o primeiro endereço do elemento, usamos a expressão abaixo.
Armazenamento na MP
Endereço base calculado pela fórmula anterior + deslocamento coluna * número de bytes do tipo
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Armazenamento na MP
2000
Total: 80 posições de memória
Localizando: elemento linha 2/ coluna 3
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Armazenamento na MP
 
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Armazenamento na MP
 
Localizando a linha 2
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Armazenamento na MP
2000 + 4(colunas) * 2(deslocamento linha) * 4(tamanho do float) =
 2032
 
Localizando a linha 2
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Armazenamento na MP
 
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Armazenamento na MP
 
Localizando a coluna 3
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Armazenamento na MP
2032 + 3(deslocamento coluna) * 4(tamanho do float) =
 2044
 
Localizando a coluna 3
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Armazenamento na MP
2032 + 3(deslocamento coluna) * 4(tamanho do float) =
 2044
 
Localizando a coluna 3
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Suponha que um médico deseje contratar você para construir um programa que possa armazenar nome completo, peso, altura e IMC de 10 pacientes. 
Ele lhe entregou um desenho parecido com o do próximo slide.
Exemplificando
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Alguma 
?
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Uma matriz 10 x 30
char
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Uma matriz 10 x 3
float
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Declarando as matrizes
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Declarando as matrizes
float dadosPacientes[10][3];
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Declarando as matrizes
float dadosPacientes[10][3];
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Declarando as matrizes
float dadosPacientes[10][3];
char nomesPacientes[10][30];
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Não entendi a Matriz de char.
Armazenamento na MP
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
char nome [30];
Quando desejamos armazenar um nome numa Matriz Unidimensional, tratamos como se ela fosse uma variável simples.
fgets(nome, 30, stdin);
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
char nome[10] [30];
0 1
2 3
4 5
6 7
8 9
10 11
12 13
28 29
14 15
...
0
1
2
3
4
5
6
7
8
0
Quando desejamos armazenar um nome numa Matriz Bidimensional, tratamos como se ela fosse uma matriz Unidimensional.
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
char nome[10] [30];
0 1
2 3
4 5
6 7
8 9
10 11
12 13
28 29
14 15
...
0
1
2
3
4
5
6
7
8
0
fgets(nome[var], 30, stdin);
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Por essa razão, vimos o trecho de entrada na Aula 6!
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Trecho de Atribuição
valor é uma expressão que pode envolver constante ou operações com outra(s) matriz(es).
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Declara / Atribui
A matriz Bidimensional mat é assumida como
tendo quatro linhas.
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Numérica
Trecho de Entrada
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Trecho de Entrada
Matriz de char: declarada como Bidimensional
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Trecho de Entrada
Matriz de char: declarada como Bidimensional
char nomeMatriz[tamanhoLinha][ tamanhoColuna];
 [ ][ ]
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Trecho de Entrada
Matriz de char: declarada como Bidimensional
, mas o trecho é de Unidimensional.
char nomeMatriz[tamanhoLinha][ tamanhoColuna];
 [ ][ ]
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Trecho de Entrada
Matriz de char: declarada como Bidimensional
, mas o trecho é de Unidimensional.
char nomeMatriz[tamanhoLinha][ tamanhoColuna];
 [ ][ ]
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Um problema a resolver
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Um problema a resolver
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Um problema a resolver
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Trecho de Saída
Matriz Numérica
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
Trecho de Saída
Declarada como Bidimensional, mas o trecho é de Unidimensional.
Matriz de char
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
O programa do Médico
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
O programa do Médico
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
O programa do Médico
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
O programa do Médico
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
O programa do Médico
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
O programa do Médico
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
O programa do Médico
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
O programa do Médico
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
O programa do Médico
Resolvido
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
1) Só existem matrizes Unidimensionais e Bidimensionais?
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
R: Não.
1) Só existem matrizes Unidimensionais e Bidimensionais?
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
2) Se for uma matriz tridimensional, terá três pares de colchetes? 
R: Não.
1) Só existem matrizes Unidimensionais e Bidimensionais?
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
R: SIM.
2) Se for uma matriz tridimensional, terá três pares de colchetes? 
R: Não.
1) Só existem matrizes Unidimensionais e Bidimensionais?
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
R: SIM.
2) Se for uma matriz tridimensional, terá três pares de colchetes? 
R: Não.
3) Na entrada e na saída a matriz Bidimensional de char é tratada como Unidimensional já que usamos uma par de colchetes. Quando faremos uso dos dois pares de colchetes? 
1) Só existem matrizes Unidimensionais e Bidimensionais?
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
R: Quando precisarmos buscar um único caracter. Exemplos:
Converter para maiúscula uma letra minúscula ou vice-versa; 
Contar vogais de uma frase;
Criptografar uma mensagem;
Inverter a frase para saber se é palíndromo;
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I
 Matrizes Bidimensionais: Agrupando para simplificar – Aula7
LINGUAGEM DE PROGRAMAÇÃO I

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?

Outros materiais