SlideShare una empresa de Scribd logo
1 de 60
Descargar para leer sin conexión
Lógica de Programação 
Unimep/Pronatec 
2° Semestre/2014 
AULA 10 
- Prof. André Bertoletti - 
apbertolet@unimep.br
Aula de hoje 
•Vetores unidimensionais 
•Vetores multidimensionais (Matrizes) 
•Exercícios Portugol/C#
NÃO ESQUEÇA DA SUA Hora do Código 
Acesse, identifique-se e faça os exercícios! 
abre.ai/horadocodigo
Vetores Quando precisamos guardar várias informações ao mesmo tempo
Recordar é viver... O que é uma variável mesmo?! 
Valor
Como funciona uma variável tradicional Numero  32 
32
10 
32 
Como funciona uma variável tradicional 
Numero  10
Uma variável tradicional armazena apenas o último valor informado 
10
E como resolver esta necessidade?! Armazenar diversos valores dentro de uma mesma variável?
Conheça a variável do tipo VETOR
Conheça a variável do tipo VETOR 
20 
32
Existem dois tipos de Vetores Unidimensionais e Multidimensionais
Vetor unidimensional 
1 linha 
X 
N colunas
Sintaxe de declaração de um vetor unidimensional 
Tipo Nome[NumeroDeElementos] 
Exemplos: 
Inteiro Notas[10] 
Texto Nomes[5] 
Decimal Valores[11]
Declarando um vetor unidimensional 
Inteiro Numeros[4] 
(em algoritmo) 
inteiro Numeros[4] 
(em Portugol Studio) 
int[] Numeros = new int[4]; 
(em C#)
Vetor multidimensional (Matriz) 
N linhas 
X 
N colunas
Sintaxe de declaração de um vetor multidimensional 
Tipo Nome[NumeroDeLinhas, NumeroDeColunas] 
Exemplos: 
Inteiro Notas[10,2] 
Texto Nomes[5,5] 
Decimal Valores[11,3]
Declarando um vetor multidimensional 
Inteiro Numeros[3, 4] 
(em algoritmo) 
inteiro Numeros[3][4] 
(em Portugol Studio) 
int[,] Numeros = new int[3, 4]; 
(em C#)
Um vetor visto por dentro (unidimensional) 
0 
1 
2 
3 
32 
10 
7 
20 
Elementos 
Índices
Um vetor visto por dentro (multidimensional) 
0 
1 
2 
3 
0 
32 
10 
7 
20 
1 
52 
24 
5 
2 
2 
43 
11 
45 
14 
Elementos 
Índices 
Índices
MAS ANTEÇÃO!!!
Cuidado com a “pegadinha” dos índices 
Todo vetor inicia do índice 0 (zero) e termina com o índice [NumeroDeElementos] – 1 
–Por exemplo: 
//Abaixo temos um vetor de 4 posições já os seus respectivos elementos em cada posição 
Inteiro Numeros[4]  { 32, 10, 7, 20 } 
//Código que exibe o primeiro elemento, ou seja, 32 
Escreva(Numeros[0]) 
//Código que exibe o último elemento, ou seja, 20 
Escreva(Numeros[3])
Vamos ver ao vivo! Um exemplo em Portugol e C#
Dica importante! Em algoritmos mais elaborados, como estes com Vetores e Matrizes, torna-se fundamental o uso da ferramenta de Depuração (Debug), para executar o programa linha a linha e assim, compreender de forma mais clara o funcionamento do seu código.
Lembretes de como depurar um código em Portugol Studio
Lembretes de como depurar um código em C#
Mas qual a utilidade dos vetores? Resolvendo um problema usando esta técnica
Exercício_V1 
Escreva um programa que leia e armazene dez nomes de alunos. 
Após a leitura, mostre a lista de nomes digitados, exibindo-os pela ordem inversa da digitação, ou seja, o ultimo aluno que foi lido deve ser o primeiro a ser exibido, e assim por diante.
Programador amador
Programador “querendo melhorar”
Programador “quase lá”
Programador Pronatec/Unimep
Programador Pronatec/Unimep (em C#)
Exercício_V2 
Escreva um programa que leia uma matriz 2x3 de números inteiros, e ao final, e no final, escreva quantos dos elementos digitados foram maiores do que 10 (dez).
Programador amador
Programador “querendo melhorar”
Programador “quase lá”
Programador Pronatec/Unimep
Programador Pronatec/Unimep (em C#)
Vamos treinar um pouco?!
Exercício_V3 
Faça um algoritmo que leia um vetor de 20 números inteiros. A seguir, encontre o menor elemento do vetor e a sua respectiva posição dentro do vetor, mostrando a seguinte frase: “O menor elemento do vetor é”, M, “e sua posição dentro do vetor é: ”, P.
Exercício_V3 (em Algoritmo) 
1.Inicio 
2. Inteiro Numeros[20] 
3. Para (Inteiro i de 0 até 19 passo 1) 
4. Inicio 
5. Ler(Numeros[i]) 
6. Fim 
7. Inteiro P  0 
8. Inteiro M  Numeros[P] 
9. Para (Inteiro i de 0 até 19 passo 1) 
10. Inicio 
11. Se (Numeros[i] < M) 
12. Inicio 
13. M  Numeros[i] 
14. P  i 
15. Fim 
16. Fim 
17. Escrever(“O menor elemento do vetor é ”, M, “ e sua posição dentro do vetor é: ”, P) 
18.Fim
Exercício_V3 (em Portugol Studio)
Exercício_V3 (em C#)
Exercício_V4 
Escreva um algoritmo que leia dois vetores de 10 posições cada um e faça a multiplicação dos elementos de mesmo índice, colocando o resultado em um terceiro vetor. Ao final, mostre os elementos do vetor resultante.
Exercício_V4 (em Algoritmo) 
1.Inicio 
2. Inteiro VetorA[10], VetorB[10], VetorResultado[10] 
3. Para (Inteiro i de 0 até 9 passo 1) 
4. Inicio 
5. Ler(VetorA[i]) 
6. Ler(VetorB[i]) 
7. VetorResultado[i]  VetorA[i] * VetorB[i] 
8. Fim 
9. Escrever(“O resultado da multiplicação entre os dois vetores é: “) 
10. Para (Inteiro i de 0 até 9 passo 1) 
11. Inicio 
12. Escrever(VetorResultado[i]) 
13. Fim 
14.Fim
Exercício_V4 (em Portugol Studio)
Exercício_V4 (em C#)
A saber! 
Na maioria das linguagens de programação, o tipo de dados string (texto) é considerado um vetor de caracteres, por exemplo, a frase “Bom dia” é um vetor de 7 posições do tipo caractere, contendo cada letra em índice específico.
Exercício_V5 
Tendo em vista a explicação do slide anterior, escrever um programa em C# que leia uma frase qualquer, e mostre esta mesma frase na ordem inversa. 
Exemplo: o usuário digitou “O carro quebrado”, o programa irá exibir “odarbeuq orrac o”
Exercício_V5 (em Algoritmo) 
1.Inicio 
2. Texto Frase 
3. Ler(Frase) 
4. Para (Inteiro i de Frase.Tamanho - 1 até 0 passo -1) 
5. Inicio 
6. Escrever(Frase[i]) 
7. Fim 
8.Fim
Exercício_V5 (em C#)
A saber! 
Dentro de uma matriz quadrada (mesmo número de linhas e colunas), a sua diagonal principal é representada pelos elementos onde o índice da linha é igual ao índice da coluna. Veja um exemplo: 
0 
1 
2 
0 
1 
2
Exercício_V6 
Tendo em vista a explicação do slide anterior, declare uma matriz 5 x 5 de números inteiros, e preencha com o valor 1 a diagonal principal, e com o valor 0 os demais elementos. Ao final, escreva a matriz obtida.
Exercício_V6 (em Algoritmo) 
1.Inicio 
2. Inteiro Matriz[5, 5] 
3. Para (Inteiro i de 0 até 4 passo 1) 
4. Para (Inteiro j de 0 até 4 passo 1) 
5. Se (i == j) 
6. Matriz[i, j] = 1 
7. Senão 
8. Matriz[i, j] = 0 
9. Escrever(“O resultado da matriz é: “) 
10. Para (Inteiro i de 0 até 4 passo 1) 
11. Para (Inteiro j de 0 até 4 passo 1) 
12. Escrever(Matriz[i, j]) 
13.Fim
Exercício_V6 (em Portugol Studio)
Exercício_V6 (em C#)
Por hoje é só... Agora é hora de estudar! Acesse mais exercícios aqui: http://abre.ai/exercicios-vetormatriz

Más contenido relacionado

La actualidad más candente

Oficina de Lógica de Programação - Uso do Scratch e do GvR
Oficina de Lógica de Programação - Uso do Scratch e do GvROficina de Lógica de Programação - Uso do Scratch e do GvR
Oficina de Lógica de Programação - Uso do Scratch e do GvRCiro Matheus
 
Conceitos e técnicas de programação apresentação
Conceitos e técnicas de programação apresentaçãoConceitos e técnicas de programação apresentação
Conceitos e técnicas de programação apresentaçãoRobson Ferreira
 
Lógica de programação pascal
Lógica de programação   pascalLógica de programação   pascal
Lógica de programação pascalJocelma Rios
 
Conceitos e técnicas de programação introdução
Conceitos e técnicas de programação introduçãoConceitos e técnicas de programação introdução
Conceitos e técnicas de programação introduçãoRobson Ferreira
 
Dicas para maratonas de programação
Dicas para maratonas de programaçãoDicas para maratonas de programação
Dicas para maratonas de programaçãoAnderson Araújo
 
Conceitos e técnicas de programação aula 1
Conceitos e técnicas de programação aula 1Conceitos e técnicas de programação aula 1
Conceitos e técnicas de programação aula 1Robson Ferreira
 
Curso de Delphi - Lógica de Programacao
Curso de Delphi - Lógica de ProgramacaoCurso de Delphi - Lógica de Programacao
Curso de Delphi - Lógica de ProgramacaoJosé Araújo
 
Curso de Delphi - Linguagem Pascal
Curso de Delphi - Linguagem PascalCurso de Delphi - Linguagem Pascal
Curso de Delphi - Linguagem PascalJosé Araújo
 
Conceitos Fundamentais de Programacao
Conceitos Fundamentais de ProgramacaoConceitos Fundamentais de Programacao
Conceitos Fundamentais de ProgramacaoJorge Cardoso
 
Curso de Delphi - Lógica de Programação 2
Curso de Delphi - Lógica de Programação 2Curso de Delphi - Lógica de Programação 2
Curso de Delphi - Lógica de Programação 2José Araújo
 
Aula 04 estruturas de repetição
Aula 04   estruturas de repetiçãoAula 04   estruturas de repetição
Aula 04 estruturas de repetiçãoTácito Graça
 
Introdução à programação
Introdução à programaçãoIntrodução à programação
Introdução à programação12anogolega
 
Lógica de Programação - Algoritmos
Lógica de Programação - AlgoritmosLógica de Programação - Algoritmos
Lógica de Programação - AlgoritmosRoney Sousa
 
Algoritmos e Técnicas de Programação - Curso Completo
Algoritmos e Técnicas de Programação - Curso CompletoAlgoritmos e Técnicas de Programação - Curso Completo
Algoritmos e Técnicas de Programação - Curso Completothomasdacosta
 
Tutorial pascal zim
Tutorial pascal zimTutorial pascal zim
Tutorial pascal zim12anogolega
 
Lógica de programação { para iniciantes }
Lógica de programação { para iniciantes }Lógica de programação { para iniciantes }
Lógica de programação { para iniciantes }Mariana Camargo
 
Comandos de pascal e estrutura de repetição (para...fazer)
Comandos de pascal e estrutura de repetição (para...fazer)Comandos de pascal e estrutura de repetição (para...fazer)
Comandos de pascal e estrutura de repetição (para...fazer)111111119
 

La actualidad más candente (20)

Oficina de Lógica de Programação - Uso do Scratch e do GvR
Oficina de Lógica de Programação - Uso do Scratch e do GvROficina de Lógica de Programação - Uso do Scratch e do GvR
Oficina de Lógica de Programação - Uso do Scratch e do GvR
 
Python + algoritmo
Python + algoritmoPython + algoritmo
Python + algoritmo
 
Aula python
Aula pythonAula python
Aula python
 
Conceitos e técnicas de programação apresentação
Conceitos e técnicas de programação apresentaçãoConceitos e técnicas de programação apresentação
Conceitos e técnicas de programação apresentação
 
Lógica de programação pascal
Lógica de programação   pascalLógica de programação   pascal
Lógica de programação pascal
 
Conceitos e técnicas de programação introdução
Conceitos e técnicas de programação introduçãoConceitos e técnicas de programação introdução
Conceitos e técnicas de programação introdução
 
02 while
02 while02 while
02 while
 
Dicas para maratonas de programação
Dicas para maratonas de programaçãoDicas para maratonas de programação
Dicas para maratonas de programação
 
Conceitos e técnicas de programação aula 1
Conceitos e técnicas de programação aula 1Conceitos e técnicas de programação aula 1
Conceitos e técnicas de programação aula 1
 
Curso de Delphi - Lógica de Programacao
Curso de Delphi - Lógica de ProgramacaoCurso de Delphi - Lógica de Programacao
Curso de Delphi - Lógica de Programacao
 
Curso de Delphi - Linguagem Pascal
Curso de Delphi - Linguagem PascalCurso de Delphi - Linguagem Pascal
Curso de Delphi - Linguagem Pascal
 
Conceitos Fundamentais de Programacao
Conceitos Fundamentais de ProgramacaoConceitos Fundamentais de Programacao
Conceitos Fundamentais de Programacao
 
Curso de Delphi - Lógica de Programação 2
Curso de Delphi - Lógica de Programação 2Curso de Delphi - Lógica de Programação 2
Curso de Delphi - Lógica de Programação 2
 
Aula 04 estruturas de repetição
Aula 04   estruturas de repetiçãoAula 04   estruturas de repetição
Aula 04 estruturas de repetição
 
Introdução à programação
Introdução à programaçãoIntrodução à programação
Introdução à programação
 
Lógica de Programação - Algoritmos
Lógica de Programação - AlgoritmosLógica de Programação - Algoritmos
Lógica de Programação - Algoritmos
 
Algoritmos e Técnicas de Programação - Curso Completo
Algoritmos e Técnicas de Programação - Curso CompletoAlgoritmos e Técnicas de Programação - Curso Completo
Algoritmos e Técnicas de Programação - Curso Completo
 
Tutorial pascal zim
Tutorial pascal zimTutorial pascal zim
Tutorial pascal zim
 
Lógica de programação { para iniciantes }
Lógica de programação { para iniciantes }Lógica de programação { para iniciantes }
Lógica de programação { para iniciantes }
 
Comandos de pascal e estrutura de repetição (para...fazer)
Comandos de pascal e estrutura de repetição (para...fazer)Comandos de pascal e estrutura de repetição (para...fazer)
Comandos de pascal e estrutura de repetição (para...fazer)
 

Similar a Lógica de Programação com Vetores e Matrizes

mod4-estruturas-dadosestaticas-ordenacao
mod4-estruturas-dadosestaticas-ordenacaomod4-estruturas-dadosestaticas-ordenacao
mod4-estruturas-dadosestaticas-ordenacaodiogoa21
 
Conceitos e técnicas de programação lista de exercícios ii
Conceitos e técnicas de programação lista de exercícios iiConceitos e técnicas de programação lista de exercícios ii
Conceitos e técnicas de programação lista de exercícios iiRobson Ferreira
 
Matrizes e Vetores para programação
Matrizes e Vetores para programaçãoMatrizes e Vetores para programação
Matrizes e Vetores para programaçãoKamila Joyce
 
Alg04 - Vetores e Matrizes.pdf
Alg04 - Vetores e Matrizes.pdfAlg04 - Vetores e Matrizes.pdf
Alg04 - Vetores e Matrizes.pdfSilvano Oliveira
 
Cartilha de Octave para Matematica Computacional.pdf
Cartilha de Octave para Matematica Computacional.pdfCartilha de Octave para Matematica Computacional.pdf
Cartilha de Octave para Matematica Computacional.pdfEdkallenn Lima
 
Aula 8 - Vetores e Matrizes.pptx
Aula 8 - Vetores e Matrizes.pptxAula 8 - Vetores e Matrizes.pptx
Aula 8 - Vetores e Matrizes.pptxOsvano Silva
 
Vetores e Matrizes em C.
Vetores e Matrizes em C.Vetores e Matrizes em C.
Vetores e Matrizes em C.SchoolByte
 
Algoritmos e Programação: Vetores
Algoritmos e Programação: VetoresAlgoritmos e Programação: Vetores
Algoritmos e Programação: VetoresAlex Camargo
 
Aula 11 - Vetores unidimensionais - parte 1
Aula 11 - Vetores unidimensionais - parte 1Aula 11 - Vetores unidimensionais - parte 1
Aula 11 - Vetores unidimensionais - parte 1Pacc UAB
 
Algoritmos e Programação: Matrizes
Algoritmos e Programação: MatrizesAlgoritmos e Programação: Matrizes
Algoritmos e Programação: MatrizesAlex Camargo
 
Linguagem C - Vetores e matrizes [exercícios]
Linguagem C - Vetores e matrizes [exercícios]Linguagem C - Vetores e matrizes [exercícios]
Linguagem C - Vetores e matrizes [exercícios]Matheus Alves
 
Aula sobre matrizes - Linguagem C
Aula sobre matrizes - Linguagem CAula sobre matrizes - Linguagem C
Aula sobre matrizes - Linguagem Cprofjr
 

Similar a Lógica de Programação com Vetores e Matrizes (20)

mod4-estruturas-dadosestaticas-ordenacao
mod4-estruturas-dadosestaticas-ordenacaomod4-estruturas-dadosestaticas-ordenacao
mod4-estruturas-dadosestaticas-ordenacao
 
Vetores e Matrizes.pdf
Vetores e Matrizes.pdfVetores e Matrizes.pdf
Vetores e Matrizes.pdf
 
Conceitos e técnicas de programação lista de exercícios ii
Conceitos e técnicas de programação lista de exercícios iiConceitos e técnicas de programação lista de exercícios ii
Conceitos e técnicas de programação lista de exercícios ii
 
Matrizes e Vetores para programação
Matrizes e Vetores para programaçãoMatrizes e Vetores para programação
Matrizes e Vetores para programação
 
Alg04 - Vetores e Matrizes.pdf
Alg04 - Vetores e Matrizes.pdfAlg04 - Vetores e Matrizes.pdf
Alg04 - Vetores e Matrizes.pdf
 
Cartilha de Octave para Matematica Computacional.pdf
Cartilha de Octave para Matematica Computacional.pdfCartilha de Octave para Matematica Computacional.pdf
Cartilha de Octave para Matematica Computacional.pdf
 
Modulo02
Modulo02Modulo02
Modulo02
 
Aula 8 - Vetores e Matrizes.pptx
Aula 8 - Vetores e Matrizes.pptxAula 8 - Vetores e Matrizes.pptx
Aula 8 - Vetores e Matrizes.pptx
 
19_vetores.pdf
19_vetores.pdf19_vetores.pdf
19_vetores.pdf
 
Vetores e Matrizes em C.
Vetores e Matrizes em C.Vetores e Matrizes em C.
Vetores e Matrizes em C.
 
Algoritmos e Programação: Vetores
Algoritmos e Programação: VetoresAlgoritmos e Programação: Vetores
Algoritmos e Programação: Vetores
 
Ipccea cap iv
Ipccea cap ivIpccea cap iv
Ipccea cap iv
 
Aula 11 - Vetores unidimensionais - parte 1
Aula 11 - Vetores unidimensionais - parte 1Aula 11 - Vetores unidimensionais - parte 1
Aula 11 - Vetores unidimensionais - parte 1
 
Algoritmos e Programação: Matrizes
Algoritmos e Programação: MatrizesAlgoritmos e Programação: Matrizes
Algoritmos e Programação: Matrizes
 
Ap vetores
Ap vetoresAp vetores
Ap vetores
 
Linguagem C - Vetores e matrizes [exercícios]
Linguagem C - Vetores e matrizes [exercícios]Linguagem C - Vetores e matrizes [exercícios]
Linguagem C - Vetores e matrizes [exercícios]
 
Aula 05 Vetores
Aula 05  VetoresAula 05  Vetores
Aula 05 Vetores
 
Aula sobre matrizes - Linguagem C
Aula sobre matrizes - Linguagem CAula sobre matrizes - Linguagem C
Aula sobre matrizes - Linguagem C
 
Aula06
Aula06Aula06
Aula06
 
Algoritmos - Aula 13 A - Lacos em C
Algoritmos - Aula 13 A - Lacos em CAlgoritmos - Aula 13 A - Lacos em C
Algoritmos - Aula 13 A - Lacos em C
 

Más de André Phillip Bertoletti

Teste de software, na visão de um desenvolvedor
Teste de software, na visão de um desenvolvedorTeste de software, na visão de um desenvolvedor
Teste de software, na visão de um desenvolvedorAndré Phillip Bertoletti
 
Banco de Dados II - Unimep/Pronatec - Aula 12
Banco de Dados II - Unimep/Pronatec - Aula 12Banco de Dados II - Unimep/Pronatec - Aula 12
Banco de Dados II - Unimep/Pronatec - Aula 12André Phillip Bertoletti
 
Banco de Dados II - Unimep/Pronatec - Aula 11
Banco de Dados II - Unimep/Pronatec - Aula 11Banco de Dados II - Unimep/Pronatec - Aula 11
Banco de Dados II - Unimep/Pronatec - Aula 11André Phillip Bertoletti
 
Banco de Dados II - Unimep/Pronatec - Aula 10
Banco de Dados II - Unimep/Pronatec - Aula 10Banco de Dados II - Unimep/Pronatec - Aula 10
Banco de Dados II - Unimep/Pronatec - Aula 10André Phillip Bertoletti
 
Banco de Dados II - Unimep/Pronatec - Aula 9
Banco de Dados II - Unimep/Pronatec - Aula 9Banco de Dados II - Unimep/Pronatec - Aula 9
Banco de Dados II - Unimep/Pronatec - Aula 9André Phillip Bertoletti
 
Banco de Dados II - Unimep/Pronatec - Aula 8
Banco de Dados II - Unimep/Pronatec - Aula 8Banco de Dados II - Unimep/Pronatec - Aula 8
Banco de Dados II - Unimep/Pronatec - Aula 8André Phillip Bertoletti
 
Interface Homem-máquina - Unimep/Pronatec - Aula 9
Interface Homem-máquina - Unimep/Pronatec - Aula 9Interface Homem-máquina - Unimep/Pronatec - Aula 9
Interface Homem-máquina - Unimep/Pronatec - Aula 9André Phillip Bertoletti
 
Banco de Dados II - Unimep/Pronatec - Aula 6
Banco de Dados II - Unimep/Pronatec - Aula 6Banco de Dados II - Unimep/Pronatec - Aula 6
Banco de Dados II - Unimep/Pronatec - Aula 6André Phillip Bertoletti
 
Interface Homem-máquina - Unimep/Pronatec - Aula 7
Interface Homem-máquina - Unimep/Pronatec - Aula 7Interface Homem-máquina - Unimep/Pronatec - Aula 7
Interface Homem-máquina - Unimep/Pronatec - Aula 7André Phillip Bertoletti
 
Interface Homem-máquina - Unimep/Pronatec - Aula 6
Interface Homem-máquina - Unimep/Pronatec - Aula 6Interface Homem-máquina - Unimep/Pronatec - Aula 6
Interface Homem-máquina - Unimep/Pronatec - Aula 6André Phillip Bertoletti
 
Interface Homem-máquina - Unimep/Pronatec - Aula 4
Interface Homem-máquina - Unimep/Pronatec - Aula 4Interface Homem-máquina - Unimep/Pronatec - Aula 4
Interface Homem-máquina - Unimep/Pronatec - Aula 4André Phillip Bertoletti
 
Interface Homem-máquina - Unimep/Pronatec - Aula 3
Interface Homem-máquina - Unimep/Pronatec - Aula 3Interface Homem-máquina - Unimep/Pronatec - Aula 3
Interface Homem-máquina - Unimep/Pronatec - Aula 3André Phillip Bertoletti
 
Interface Homem-máquina - Unimep/Pronatec - Aula 2
Interface Homem-máquina - Unimep/Pronatec - Aula 2Interface Homem-máquina - Unimep/Pronatec - Aula 2
Interface Homem-máquina - Unimep/Pronatec - Aula 2André Phillip Bertoletti
 
Banco de Dados II - Unimep/Pronatec - Aula 5
Banco de Dados II - Unimep/Pronatec - Aula 5Banco de Dados II - Unimep/Pronatec - Aula 5
Banco de Dados II - Unimep/Pronatec - Aula 5André Phillip Bertoletti
 
Banco de Dados II - Unimep/Pronatec - Aula 4
Banco de Dados II - Unimep/Pronatec - Aula 4Banco de Dados II - Unimep/Pronatec - Aula 4
Banco de Dados II - Unimep/Pronatec - Aula 4André Phillip Bertoletti
 

Más de André Phillip Bertoletti (20)

Teste de software - Conhecendo e Aplicando
Teste de software - Conhecendo e AplicandoTeste de software - Conhecendo e Aplicando
Teste de software - Conhecendo e Aplicando
 
Comunidade Locais de TI
Comunidade Locais de TIComunidade Locais de TI
Comunidade Locais de TI
 
Qualidade e Testes de Software
Qualidade e Testes de SoftwareQualidade e Testes de Software
Qualidade e Testes de Software
 
The clean coder
The clean coder The clean coder
The clean coder
 
Teste de software, na visão de um desenvolvedor
Teste de software, na visão de um desenvolvedorTeste de software, na visão de um desenvolvedor
Teste de software, na visão de um desenvolvedor
 
Banco de Dados II - Unimep/Pronatec - Aula 12
Banco de Dados II - Unimep/Pronatec - Aula 12Banco de Dados II - Unimep/Pronatec - Aula 12
Banco de Dados II - Unimep/Pronatec - Aula 12
 
Banco de Dados II - Unimep/Pronatec - Aula 11
Banco de Dados II - Unimep/Pronatec - Aula 11Banco de Dados II - Unimep/Pronatec - Aula 11
Banco de Dados II - Unimep/Pronatec - Aula 11
 
Política nas mídias sociais
Política nas mídias sociaisPolítica nas mídias sociais
Política nas mídias sociais
 
Banco de Dados II - Unimep/Pronatec - Aula 10
Banco de Dados II - Unimep/Pronatec - Aula 10Banco de Dados II - Unimep/Pronatec - Aula 10
Banco de Dados II - Unimep/Pronatec - Aula 10
 
Banco de Dados II - Unimep/Pronatec - Aula 9
Banco de Dados II - Unimep/Pronatec - Aula 9Banco de Dados II - Unimep/Pronatec - Aula 9
Banco de Dados II - Unimep/Pronatec - Aula 9
 
Banco de Dados II - Unimep/Pronatec - Aula 8
Banco de Dados II - Unimep/Pronatec - Aula 8Banco de Dados II - Unimep/Pronatec - Aula 8
Banco de Dados II - Unimep/Pronatec - Aula 8
 
Interface Homem-máquina - Unimep/Pronatec - Aula 9
Interface Homem-máquina - Unimep/Pronatec - Aula 9Interface Homem-máquina - Unimep/Pronatec - Aula 9
Interface Homem-máquina - Unimep/Pronatec - Aula 9
 
Banco de Dados II - Unimep/Pronatec - Aula 6
Banco de Dados II - Unimep/Pronatec - Aula 6Banco de Dados II - Unimep/Pronatec - Aula 6
Banco de Dados II - Unimep/Pronatec - Aula 6
 
Interface Homem-máquina - Unimep/Pronatec - Aula 7
Interface Homem-máquina - Unimep/Pronatec - Aula 7Interface Homem-máquina - Unimep/Pronatec - Aula 7
Interface Homem-máquina - Unimep/Pronatec - Aula 7
 
Interface Homem-máquina - Unimep/Pronatec - Aula 6
Interface Homem-máquina - Unimep/Pronatec - Aula 6Interface Homem-máquina - Unimep/Pronatec - Aula 6
Interface Homem-máquina - Unimep/Pronatec - Aula 6
 
Interface Homem-máquina - Unimep/Pronatec - Aula 4
Interface Homem-máquina - Unimep/Pronatec - Aula 4Interface Homem-máquina - Unimep/Pronatec - Aula 4
Interface Homem-máquina - Unimep/Pronatec - Aula 4
 
Interface Homem-máquina - Unimep/Pronatec - Aula 3
Interface Homem-máquina - Unimep/Pronatec - Aula 3Interface Homem-máquina - Unimep/Pronatec - Aula 3
Interface Homem-máquina - Unimep/Pronatec - Aula 3
 
Interface Homem-máquina - Unimep/Pronatec - Aula 2
Interface Homem-máquina - Unimep/Pronatec - Aula 2Interface Homem-máquina - Unimep/Pronatec - Aula 2
Interface Homem-máquina - Unimep/Pronatec - Aula 2
 
Banco de Dados II - Unimep/Pronatec - Aula 5
Banco de Dados II - Unimep/Pronatec - Aula 5Banco de Dados II - Unimep/Pronatec - Aula 5
Banco de Dados II - Unimep/Pronatec - Aula 5
 
Banco de Dados II - Unimep/Pronatec - Aula 4
Banco de Dados II - Unimep/Pronatec - Aula 4Banco de Dados II - Unimep/Pronatec - Aula 4
Banco de Dados II - Unimep/Pronatec - Aula 4
 

Lógica de Programação com Vetores e Matrizes

  • 1. Lógica de Programação Unimep/Pronatec 2° Semestre/2014 AULA 10 - Prof. André Bertoletti - apbertolet@unimep.br
  • 2. Aula de hoje •Vetores unidimensionais •Vetores multidimensionais (Matrizes) •Exercícios Portugol/C#
  • 3. NÃO ESQUEÇA DA SUA Hora do Código Acesse, identifique-se e faça os exercícios! abre.ai/horadocodigo
  • 4. Vetores Quando precisamos guardar várias informações ao mesmo tempo
  • 5. Recordar é viver... O que é uma variável mesmo?! Valor
  • 6. Como funciona uma variável tradicional Numero  32 32
  • 7. 10 32 Como funciona uma variável tradicional Numero  10
  • 8. Uma variável tradicional armazena apenas o último valor informado 10
  • 9. E como resolver esta necessidade?! Armazenar diversos valores dentro de uma mesma variável?
  • 10. Conheça a variável do tipo VETOR
  • 11. Conheça a variável do tipo VETOR 20 32
  • 12. Existem dois tipos de Vetores Unidimensionais e Multidimensionais
  • 13. Vetor unidimensional 1 linha X N colunas
  • 14. Sintaxe de declaração de um vetor unidimensional Tipo Nome[NumeroDeElementos] Exemplos: Inteiro Notas[10] Texto Nomes[5] Decimal Valores[11]
  • 15. Declarando um vetor unidimensional Inteiro Numeros[4] (em algoritmo) inteiro Numeros[4] (em Portugol Studio) int[] Numeros = new int[4]; (em C#)
  • 16. Vetor multidimensional (Matriz) N linhas X N colunas
  • 17. Sintaxe de declaração de um vetor multidimensional Tipo Nome[NumeroDeLinhas, NumeroDeColunas] Exemplos: Inteiro Notas[10,2] Texto Nomes[5,5] Decimal Valores[11,3]
  • 18. Declarando um vetor multidimensional Inteiro Numeros[3, 4] (em algoritmo) inteiro Numeros[3][4] (em Portugol Studio) int[,] Numeros = new int[3, 4]; (em C#)
  • 19. Um vetor visto por dentro (unidimensional) 0 1 2 3 32 10 7 20 Elementos Índices
  • 20. Um vetor visto por dentro (multidimensional) 0 1 2 3 0 32 10 7 20 1 52 24 5 2 2 43 11 45 14 Elementos Índices Índices
  • 22. Cuidado com a “pegadinha” dos índices Todo vetor inicia do índice 0 (zero) e termina com o índice [NumeroDeElementos] – 1 –Por exemplo: //Abaixo temos um vetor de 4 posições já os seus respectivos elementos em cada posição Inteiro Numeros[4]  { 32, 10, 7, 20 } //Código que exibe o primeiro elemento, ou seja, 32 Escreva(Numeros[0]) //Código que exibe o último elemento, ou seja, 20 Escreva(Numeros[3])
  • 23. Vamos ver ao vivo! Um exemplo em Portugol e C#
  • 24. Dica importante! Em algoritmos mais elaborados, como estes com Vetores e Matrizes, torna-se fundamental o uso da ferramenta de Depuração (Debug), para executar o programa linha a linha e assim, compreender de forma mais clara o funcionamento do seu código.
  • 25. Lembretes de como depurar um código em Portugol Studio
  • 26.
  • 27. Lembretes de como depurar um código em C#
  • 28.
  • 29. Mas qual a utilidade dos vetores? Resolvendo um problema usando esta técnica
  • 30. Exercício_V1 Escreva um programa que leia e armazene dez nomes de alunos. Após a leitura, mostre a lista de nomes digitados, exibindo-os pela ordem inversa da digitação, ou seja, o ultimo aluno que foi lido deve ser o primeiro a ser exibido, e assim por diante.
  • 36. Exercício_V2 Escreva um programa que leia uma matriz 2x3 de números inteiros, e ao final, e no final, escreva quantos dos elementos digitados foram maiores do que 10 (dez).
  • 42. Vamos treinar um pouco?!
  • 43. Exercício_V3 Faça um algoritmo que leia um vetor de 20 números inteiros. A seguir, encontre o menor elemento do vetor e a sua respectiva posição dentro do vetor, mostrando a seguinte frase: “O menor elemento do vetor é”, M, “e sua posição dentro do vetor é: ”, P.
  • 44. Exercício_V3 (em Algoritmo) 1.Inicio 2. Inteiro Numeros[20] 3. Para (Inteiro i de 0 até 19 passo 1) 4. Inicio 5. Ler(Numeros[i]) 6. Fim 7. Inteiro P  0 8. Inteiro M  Numeros[P] 9. Para (Inteiro i de 0 até 19 passo 1) 10. Inicio 11. Se (Numeros[i] < M) 12. Inicio 13. M  Numeros[i] 14. P  i 15. Fim 16. Fim 17. Escrever(“O menor elemento do vetor é ”, M, “ e sua posição dentro do vetor é: ”, P) 18.Fim
  • 47. Exercício_V4 Escreva um algoritmo que leia dois vetores de 10 posições cada um e faça a multiplicação dos elementos de mesmo índice, colocando o resultado em um terceiro vetor. Ao final, mostre os elementos do vetor resultante.
  • 48. Exercício_V4 (em Algoritmo) 1.Inicio 2. Inteiro VetorA[10], VetorB[10], VetorResultado[10] 3. Para (Inteiro i de 0 até 9 passo 1) 4. Inicio 5. Ler(VetorA[i]) 6. Ler(VetorB[i]) 7. VetorResultado[i]  VetorA[i] * VetorB[i] 8. Fim 9. Escrever(“O resultado da multiplicação entre os dois vetores é: “) 10. Para (Inteiro i de 0 até 9 passo 1) 11. Inicio 12. Escrever(VetorResultado[i]) 13. Fim 14.Fim
  • 51. A saber! Na maioria das linguagens de programação, o tipo de dados string (texto) é considerado um vetor de caracteres, por exemplo, a frase “Bom dia” é um vetor de 7 posições do tipo caractere, contendo cada letra em índice específico.
  • 52. Exercício_V5 Tendo em vista a explicação do slide anterior, escrever um programa em C# que leia uma frase qualquer, e mostre esta mesma frase na ordem inversa. Exemplo: o usuário digitou “O carro quebrado”, o programa irá exibir “odarbeuq orrac o”
  • 53. Exercício_V5 (em Algoritmo) 1.Inicio 2. Texto Frase 3. Ler(Frase) 4. Para (Inteiro i de Frase.Tamanho - 1 até 0 passo -1) 5. Inicio 6. Escrever(Frase[i]) 7. Fim 8.Fim
  • 55. A saber! Dentro de uma matriz quadrada (mesmo número de linhas e colunas), a sua diagonal principal é representada pelos elementos onde o índice da linha é igual ao índice da coluna. Veja um exemplo: 0 1 2 0 1 2
  • 56. Exercício_V6 Tendo em vista a explicação do slide anterior, declare uma matriz 5 x 5 de números inteiros, e preencha com o valor 1 a diagonal principal, e com o valor 0 os demais elementos. Ao final, escreva a matriz obtida.
  • 57. Exercício_V6 (em Algoritmo) 1.Inicio 2. Inteiro Matriz[5, 5] 3. Para (Inteiro i de 0 até 4 passo 1) 4. Para (Inteiro j de 0 até 4 passo 1) 5. Se (i == j) 6. Matriz[i, j] = 1 7. Senão 8. Matriz[i, j] = 0 9. Escrever(“O resultado da matriz é: “) 10. Para (Inteiro i de 0 até 4 passo 1) 11. Para (Inteiro j de 0 até 4 passo 1) 12. Escrever(Matriz[i, j]) 13.Fim
  • 60. Por hoje é só... Agora é hora de estudar! Acesse mais exercícios aqui: http://abre.ai/exercicios-vetormatriz