PROGRAMA DE AÇÃO 2024 - MARIANA DA SILVA MORAES.pdf
Definir e acessar vetores em diferentes linguagens
1. Objetivos
• Identificar, na proposição de um problema, qual ou
quais variáveis compostas deverão ser definidas.
• Abstrair, projetar e construir algoritmos/programas
para :
• Definir e criar variáveis compostas homogêneas
unidimensionais ou vetor.
• Carregar dados em vetor, bem como acessar seu
conteúdo.
• Associar vetores de diferentes tipos de dados.
2. Para começar...
Vamos imaginar um programa para armazenar as médias finais dos 20 alunos
da disciplina de Algoritmos e, em seguida mostrar todas essas médias.
Uma variável simples, ocupando determinada posição de memória, só
consegue armazenar um valor, de um mesmo tipo de dado, por vez.
Portanto, usando variáveis simples, cada nota digitada substituirá a anterior,
dentro dessa variável.
Para solucionar esse e outros problemas relativos ao uso de variáveis, temos o
VETOR, também denominado variável composta homogênea
unidimensional.
3. Conhecendo a teoria para programar
Por exemplo, para armazenar as médias finais dos 20
alunos, usando variáveis simples, teríamos a seguinte
definição em VisuAlg.
Var
Media_AL1, Media_AL2,...,Media_AL20 : Real
Usando VETOR, teríamos a seguinte definição em VisuAlg:
Var
Vet_Medias_AL : VETOR [1..20] de Real
4. Conhecendo a teoria para programar
Representação simbólica da alocação do vetor
Vet_Medias_AL na memória do computador:
Essa representação simbólica demonstra o conceito da
linearidade do Vetor.
5. Conhecendo a teoria para programar
A representação simbólica do
Vetor poderia ser feita na forma
vertical.
6. Conhecendo a teoria para programar
Para o computador acessar um Vetor, é preciso que ele conheça o Nome
do Vetor, e um valor contido em uma Variável Índice que irá
apontar para o elemento do vetor cujo conteúdo será acessado.
O Índice de um vetor deve conter um valor numérico inteiro sem sinal,
podendo ser:
a) uma variável simples;
b) uma constante numérica, ou mesmo;
c) uma expressão aritmética simples, desde que esta retorne um valor
numérico inteiro sem sinal.
7. Conhecendo a teoria para programar
Definição do Índice do vetor Vet_Medias_AL:
Var
IndVet: Inteiro
Supondo que Ind_Vet contenha um valor igual a 19. Com
Ind_Vet apontando para o vetor Vet_Medias_AL, acessamos
a média 10,0.
Ind_Vet
8. Conhecendo a teoria para programar
Combinando Vetores
Supondo que além de armazenar as médias finais dos alunos seja
necessário armazenar , também, seus Nomes.
Como dados Médias e Nomes são de tipos diferentes (real e cadeia de
caracteres), então a solução é definir um vetor para conter os nomes –
Vet_Nomes_AL, e em seguida combina-lo com o Vet_Medias_AL.
Definição dos vetores em VisuAlg:
Var
Vet_Medias_AL : VETOR [1..20] de Real
Vet_Nomes_AL : VETOR [1..20] de Caractere
9. Conhecendo a teoria para programar
O mesmo Índice que aponta para um elemento do vetor
Vet_Medias_AL apontará para o elemento correspondente
no vetor Vet_Nomes_AL:
Ind_Vet
Ind_Vet
10. Vamos Programar
Considerando que os vetores Vet_Medias_AL e
Vet_Nomes_AL já estão alocados na memória do
computador e já possuem valores, para acessar e
mostrar o conteúdo deles vamos construir trechos de
programas nas linguagens VisuAlg, Pascal, C, Java e
PHP.
11. Vamos Programar - VisuAlg
Algoritmo "Media_Final"
Var
Vet_Medias_AL : Vetor [1..20] de Real
Vet_Nomes_AL : Vetor [1..20] de Caractere
Ind_Vet : Inteiro
Inicio
Limpatela
Para Ind_Vet := 1 ate 20 faca
Escreval (“Nome do Aluno(a): ",Vet_Nomes_AL[Ind_Vet])
Escreval (“Média Final: “, Vet_Medias_AL[Ind_Vet])
FimPara
....................................
FimAlgoritmo
12. Vamos Programar - Pascal
Program Media_Final;
Uses CRT;
Var
Vet_Medias_AL : Vetor [1..20] of Real;
Vet_Nomes_AL : Vetor [1..20] of String;
Ind_Vet : Byte;
Begin
ClrScr;
For Ind_Vet := 1 to 20 do
Begin
Writeln (“Nome do Aluno(a) : ",Vet_Nomes_AL[Ind_Vet]);
Writeln(“Média Final: “, Vet_Medias_AL[Ind_Vet]:0:1);
End; // FimPara
.......................................
End.
13. Vamos Programar - C
#include <stdio.h>
#include <stdlib.h>
int main()
{ // Média Final
char Vet_Nomes_AL[20][30];
float Vet_Medias_AL[20];
int Ind_Vet;
system("cls");
for (Ind_Vet = 0; Ind_Vet < 20; Ind_Vet++)
{
printf(“%s Nome do Aluno(a) : ",Vet_Nomes_AL[Ind_Vet]);
printf("n Media Final: %.2f " ,Vet_Medias_AL[Ind_Vet]);
}
............................................
}
14. Vamos Programar - Java
import Java.util.*;
public class Media_Final
{
public static void main(String[] args)
{
String Vet_Nomes_AL[];
float Vet_Medias_AL[];
int Ind_Vet;
Vet_Nomes_AL = new String[20];
Vet_Medias_AL = new float[20];
for (Ind_Vet = 0; Ind_Vet < 20; Ind_Vet++)
{
System.out.println("%s n“,“Nome do Aluno(a) : “,Vet_Nomes_AL[Ind_Vet]);
System.out.println("%s .1f n“,“Média Final: “,Vet_Medias_AL[Ind_Vet]);
}
..........................................................
}
16. Se você entendeu bem os conceitos e uso de vetor verá, no
próximo capítulo, que aprender a definir e manipular matriz
usando linguagem algorítmica é bem mais simples do que se
imagina.