Lógica de Programação
Unimep/Pronatec
2° Semestre/2014
AULA 10
- Prof. André Bertoletti -
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
Índ
ices
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
Top Related