Lógica de Programação - Unimep/Pronatec - Aula10

Post on 26-Jul-2015

127 views 1 download

Transcript of Lógica de Programação - Unimep/Pronatec - Aula10

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

Í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