Вы находитесь на странице: 1из 29

CONTEDO 04 VETORES

Disciplina: Algoritmos e POO Professora: Alba Lopes alba.lopes@ifrn.edu.br http://docente.ifrn.edu.br/albalopes

INTRODUO

Varivel

Analogia: uma caixa, na qual voc pode dar o nome que lhe achar conveniente, e guardar o contedo que desejar

Possui um tipo (caractere, lgico, inteiro ou real) O valor dentro da caixa que pode ser alterado de acordo com a execuo do algoritmo

INTRODUO

Agora imagine como ficaria na declarao de variveis, declarando uma a uma, as 50 variveis para o nome, depois as variveis para as mdias de cada aluno...

INTRODUO

O problema comea quando se precisa declarar vrias variveis para atender a um fim. PROBLEMA: Receber o nome e as 4 notas de 50 alunos de uma escola, e depois listar o nome de cada aluno junto com sua mdia.

... ...

VETORES

Em casos como esse que til a utilizao da estrutura de dados conhecida como vetor Um vetor uma espcie de caixa com vrias divisrias para armazenar coisas (dados)

uma varivel que pode armazenar vrios valores

VETORES
meuVetor medias 10 40 8 26 70 73

nomes

Paulo

Jos

Maria

Ricardo

VETORES
Os vetores so definidos pelo tipo de dados que eles devem armazenar e a quantidade de posies Exemplo:

Vetor de 8 posies para armazenar nmeros reais Vetor de 40 posies para armazenar caracteres

Os vetores so estruturas homogneas.

Ex: um vetor de inteiros s armazena dados do tipo inteiro

SINTAXE NO VISUALG

Declarao:

<nome_variavel>: vetor [posInicial..posFinal] de <tipo>

Exemplo:

algoritmo exemplo_vetores var nome_alunos: vetor [1..50] de caractere media_alunos: vetor [1..50] de real inicio

Note que so apenas DOIS PONTOS!

SINTAXE NO VISUALG

Preenchendo e acessando um vetor


As posies dos vetores so identificadas por ndices Um vetor de 10 posies, por exemplo pode ser representado da seguinte forma:

10

SINTAXE NO VISUALG

Atribuio

<nome_variavel> [<posicao>] <valor> <nome_variavel> [<posicao>] := <valor> leia(<nome_variavel> [<posicao>])

Exemplo:

algoritmo exemplo_vetores var nome_alunos: vetor [1..50] de caractere media_alunos: vetor [1..50] de real inicio nome_alunos[1] Pedro leia(nome_alunos[2]) nome_alunos[3] := Joana media_alunos[1] := 8.5

SINTAXE NO VISUALG

Exemplo:

algoritmo exemplo_vetores var nome_alunos: vetor [1..50] de caractere media_alunos: vetor [1..50] de real inicio nome_alunos[1] Pedro leia(nome_alunos[2]) nome_alunos[3] := Joana media_alunos[1] := 8.5

nome_alunos 1 media_alunos 1 2 3 4 ... 2 3 4 ...

SINTAXE NO VISUALG

Exemplo:

algoritmo exemplo_vetores var nome_alunos: vetor [1..50] de caractere media_alunos: vetor [1..50] de real inicio nome_alunos[1] Pedro leia(nome_alunos[2]) nome_alunos[3] := Joana media_alunos[1] := 8.5

nome_alunos media_alunos

Pedro 1 2 3 4 ...

...

SINTAXE NO VISUALG

Exemplo:

algoritmo exemplo_vetores var nome_alunos: vetor [1..50] de caractere media_alunos: vetor [1..50] de real inicio nome_alunos[1] Pedro leia(nome_alunos[2]) nome_alunos[3] := Joana media_alunos[1] := 8.5

nome_alunos media_alunos

Pedro 1

Maria 2 3 4 ...

...

SINTAXE NO VISUALG

Exemplo:

algoritmo exemplo_vetores var nome_alunos: vetor [1..50] de caractere media_alunos: vetor [1..50] de real inicio nome_alunos[1] Pedro leia(nome_alunos[2]) nome_alunos[3] := Joana media_alunos[1] := 8.5

nome_alunos media_alunos

Pedro 1

Maria 2

Joana 3 4 ...

...

SINTAXE NO VISUALG

Exemplo:

algoritmo exemplo_vetores var nome_alunos: vetor [1..50] de caractere media_alunos: vetor [1..50] de real inicio nome_alunos[1] Pedro leia(nome_alunos[2]) nome_alunos[3] := Joana media_alunos[1] := 8.5

nome_alunos media_alunos

Pedro 1 8.5 1

Maria 2

Joana 3 4 ...

...

SINTAXE NO VISUALG

Preenchendo um vetor

Podemos utilizar um lao de repetio para facilitar o preenchimento dos dados em vetores

Exemplo:

algoritmo exemplo_vetores var numeros: vetor [1..10] de inteiro i: inteiro inicio para i de 1 ate 10 faca escreva(Digite um valor para ser adicionado ao vetor) leia(numeros[i]) fimpara fimpara

SINTAXE NO VISUALG

Preenchendo um vetor
inteiro para a posio 1 do vetor:) para a posio 2 do vetor:) para a posio 3 do vetor:) para a posio 4 do vetor:) para a posio 5 do vetor:)

algoritmo exemplo_vetores var numeros: vetor [1..5] de inicio escreva(Digite um valor leia(numeros[1]) escreva(Digite um valor leia(numeros[2]) escreva(Digite um valor leia(numeros[3]) escreva(Digite um valor leia(numeros[4]) escreva(Digite um valor leia(numeros[5]) fimpara

SINTAXE NO VISUALG

Preenchendo um vetor

Para facilitar, podemos utilizar um lao de repetio!

Exemplo:

algoritmo exemplo_vetores var numeros: vetor [1..5] de inteiro i: inteiro inicio para i de 1 ate 5 faca escreva(Digite um valor para a posio , i , do vetor:) leia(numeros[i]) fimpara fimpara

SINTAXE NO VISUALG

Exibindo o contedo de um vetor:


valor valor valor valor valor que que que que que est est est est est na na na na na posio posio posio posio posio 1 2 3 4 5 : : : : : , , , , , numeros[1]) numeros[2]) numeros[3]) numeros[4]) numeros[5])

... escreva(O escreva(O escreva(O escreva(O escreva(O fimalgoritmo

SINTAXE NO VISUALG

Exibindo o contedo de um vetor

Ou podemos utilizar um lao de repetio para facilitar a exibio dos valores de um vetor

Exemplo:

para i de 1 ate 5 faca escreva(O valor que est na posio , i , : , numeros[i]) fimpara

EXEMPLO 1

Criar um algoritmo que leia 10 nmeros pelo teclado e exiba os nmeros na ordem correta que os nmeros foram digitados.

EXEMPLO 1

Sada:

EXEMPLO 2

Criar um algoritmo que leia 10 nmeros pelo teclado e exiba os nmeros na ordem inversa da que os nmeros foram digitados.

EXEMPLO 2

Sada:

EXEMPLO 3

Escreva um algoritmo que leia um vetor com 10 posies de nmeros inteiros. Em seguida, receba um novo valor do usurio e verifique se este valor se encontra no vetor.

EXEMPLO 3

EXEMPLO 3 (UM PEQUENO PARNTESES)

As estruturas de repetio (tanto para, enquanto e repita) permitem o uso do comando INTERROMPA

Esse comando causa a sada imediata do lao de repetio

Ao encontrar esse comando, o algoritmo passa a execuo para o prximo comando aps o lao.

EXERCCIOS
1.

Crie um algoritmo que leia um vetor de 10 nmeros inteiros. Em seguida, calcule e escreva o somatrio dos valores deste vetor. Escreva um algoritmo que leia um vetor com 15 posies de nmeros inteiros. Em seguida, escreva somente os nmeros positivos que se encontram no vetor. Escreva um algoritmo que leia um vetor com 8 posies de nmeros inteiros. Em seguida, leia um novo valor do usurio e verifique se valor se encontra no vetor. Se estiver, informe a posio desse elemento no vetor. Caso o elemento no esteja no vetor, apresente uma mensagem informando O nmero no se encontra no vetor.

2.

3.

EXERCCIOS
5.

Escreva um algoritmo que leia dois vetores de 10 posies e faa a soma dos elementos de mesmo ndice, colocando o resultado em um terceiro vetor. Mostre o vetor resultante.
Exemplo:

vetor1 vetor2 vetorResultado


6.

7 1 8

4 8 12

9 3 12

15 7 22

20 14 34

2 9 11

1 1 2

4 8 12

0 11 11

30 16 46

Crie um algoritmo que leia um vetor de 20 posies e informe:


a) b) c) d)

Quantos nmeros pares existem no vetor Quantos nmeros mpares existem no vetor Quantos nmeros maiores do que 50 Quantos nmeros menores do que 7

Вам также может понравиться