Você está na página 1de 7

Vetores

Variável e constante:

Variável: endereço <nome> armazena um valor.


compatível com um tipo de dado: inteiro, real, caracter, lógico.

Estruturas homogêneas

Um vetor é um arranjo de elementos armazenados em memória, agrupados todos em uma


variável de mesmo nome, referenciados por endereços indexados.
Semelhante a uma matriz linha ( várias colunas e uma linha ).
Assumiremos, me algoritmos, que a primeira posição do vetor, tem índice 0.

Ex. Seja o vetor A:

2 5 70 8 3 9 11 23
índice: 0 1 2 3 4 5 6 7

A[0] = 2
A[1] = 5
A[2] = 70
A[3] = 8
A[4] = 3
A[5] = 9
A[6] = 11
A[7] = 23

Vetor com 8 elementos, de mesmo tipo de dados, correspondendo a 8 variáveis com o


mesmo nome ( A ), diferenciadas por suas posições, indexadas.

Forma de declaração da variável:

tipo nome [ dimensão ]

caracter nomeAluno[50]
real nota_1[50]
real nota_2[50]
real media[50]

real nota_1[50], nota_2[50], media[50];

tipo = inteiro, real, caracter


dimensão = quantidade de elementos
Ex:
int A[8]
real B[10]
caracter nomes[20]

Na representação em portugol, identificamos as estruturas independentes para:


entrada de dados e saída de dados

Em geral, estruturas de repetição ( PARA ou ENQUANTO )

Ex.:
Entrada de dados ...
para ( L ← 0; L <tamanho do vetor>; L++ ) faça
comandos …
leia nomeDoVetor[L] …
fim-para

Saída de dados ...


para ( L ← 0; L <tamanho do vetor>; L++ ) faça
comandos …
imprima nomeDoVetor[L] …
fim-para

Exemplos de algoritmos com uso de vetores:

Ex01.: Algoritmo que lê dez nomes e imprime a listagem contendo todos os dez nomes

algoritmo LerImprime
int L;
caracter nomes[10];

para (L ← 0; L <= 9; L++) faça


imprima ("digite o nome", L+1);
leia nomes[L];
fim-para
para (L ← 0; L <= 9, L++)
imprima(L+1, "nome: ", nomes[L]);
fim-para
fim-algoritmo
Ex02: Algoritmo que armazena nome e duas notas de 10 alunos e imprime uma listagem
contendo o nome, as duas notas e a média de cada aluno

algoritmo ImprimeMedia
int L;
caracter nomes[10];
real nota_1[10], nota_2[10], media[10];

para (L← 0; L <= 9; L++ ) faça


imprima ( "digite o nome", L+1,":");
leia nomes[L];
imprima ("digite a nota 01: ");
leia nota_1[L];
imprima ("digite a nota 02: ");
leia nota_2[L];
media[L] ← (nota_1[L] + nota_2[L]) / 2;
fim-para

para (L ← 0; L <= 9; L++ ) faça


imprima ( L+1, " - nome: ", nomes[L]);
imprima ( "nota 01:",nota_1[L], "nota 02: ", nota_2[L], "Média :", media[L] );
fim-para
fim-algoritmo
Ex03.: algortimo que armazena números inteiros em dois vetores de cinco elementos cada,
e imprime o vetor soma.

algoritmo somaVetores
int L, vet01[5], vet02[5], somaVet[5];

para (L ← 0; L <= 4; L++) faça


imprima ("digite os valores para o primeiro vetor: ");
imprima ("Elemento ", L+1, " : ");
leia vet01[L];
fim-para

para (L ← 0; L <= 4; L++) faça


imprima ("digite os valores para o segundo vetor: ");
imprima ("Elemento ", L+1," : ");
leia vet02[L];
fim-para

para (L ← 0; L <= 4; L++) faça


somaVet[L] ← vet01[L] + vet02[L];
fim-para

para (L ← 0; L <= 4; L++) faça


imprima ("A soma dos vetores: ");
imprima ("Elementos : ", L+1, vet01[L]," : ");
imprima ("Elementos : ", L+1, vet02[L]," : ");
imprima ("soma : ", L+1, somaVet[L]," : ");
fim-para
fim-algoritmo
Ordenação simples de vetores

...
para ( L ← 0; L < 4; L++) faça
para (c ← L+1; c <= 4; c++) faça
Se nomes[L] > nomes[c] então
aux ← nomes[L];
nomes[L] ← nomes[c];
nomes[c] ← aux;
fim-se
Fim-para
fim-para

Ex.: algoritmo que armazena 5 nomes em um vetor, ordena e imprime sua listagem em
ordem alfabética

algoritmo ordenaNomes
int L, c;
catacter nomesVet[5], aux;

para (L ← 0; L <= 4; L++) faça


imprima("Digite o nome: ");
leia nomesVet[L];
fim-para

para (L ← 0, L<= 3 ; L++ ) faça


para (c ← L+1; c <= 4; c++) faça
Se nomesVet[L] > nomesVet[c] então
aux ← nomesVet[L];
nomesVet[L] ← nomesVet[c];
nomesVet[c] ← aux;
fim-se
fim-para
fim-para

para (L ← 0; L <= 4; L++) faça


imprima(L+1, " - Nome: ", nomesVet[L]);
fim-para
fim-algoritmo
Exercícios:

Aluno(a):___

01 - Crie um algoritmo que armazene 10 nomes em um vetor e imprima uma listagem


numerada

algoritmo nomeNumerada
# declara variáveis
int L;
caracter nomesNum[10];

# entrada de dados no vetor

para (L ← 0; L <= 9; L++) faça


imprima ("digite o nome", L+1);
leia nomes[L];
fim-para

# saída de dados

para (L ← 0; L <= 9, L++)


imprima(\n"Código:", L+1, \t "nome: ", nomes[L]);
fim-para
fim-algoritmo

02 - Crie um algoritmo que armazene 15 números inteiros em um vetor e imprima uma lista
numérica contendo o número e uma mensagem referente ao número : para ou ímpar.

resto da divisao == 0 então nro. par


resto da divisão =! 0 então nro. impar

alg

03 - Crie um algoritmo que armazena 8 números em um vetor e imprimir todos os números,


indicando na listagem, os números que são múltiplos de 2

04 - Faça um algoritmo que armazene o nome e notas de n1 e n2 de 19 alunos. Calcular e


armazenar a média de cada um, e armazenar também a situação do aluno : (Aprovado ou
Reprovado ). Imprimir uma listagem contendo o nome, notas, média e a situação de cada
aluno.

05 - Crie um algoritmo para armazenar o nome e salário de 20 pessoas. Calcular e


armazenar o novo salário sabendo-se que o reajuste foi de 8%. Imprimir uma listagem
numerada com nome, salario e novo salário reajustado.

06 - Crie um algoritmo que leia o preço de compra e o preço de venda de 100 mercadorias.
O algoritmo deverá imprimir quantas mercadorias proporcionam : lucro < 10%, lucro entre
10% e 20% e o lucro acima de 20 %.

07 - Crie um algoritmo que leia e armazene o nome e a idade de 30 pessoas e imprima e


armazene em um vetor separadamente, o nome de todas as pessoas que começam com as
letras no intervale de L - S, e imprima também, as pessoas menores de 18 anos.

08 - Crie um algoritmo que armazene o código, nome, quantidade, valor de compra e de


venda de 31 produtos. Imprima todas as informações de cada produto.

09 - Crie um algoritmo que leia dois conjuntos de números inteiros, contendo cada um 20
elementos e imprima um vetor com a soma e outro com a multiplicação desses elementos.

10 - Crie um algoritmo que leia os dados para um vetor de 100 elementos inteiros e imprima
o maior e menor entre eles, os números pares e os ímpares.

Você também pode gostar