apresentação do powerpointjeiks.net/wp-content/uploads/2013/05/slides_ltp_09.pdfvariáveis...

13
Departamento de Engenharia Rural Centro de Ciências Agrárias Programação I

Upload: others

Post on 25-Aug-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Apresentação do PowerPointjeiks.net/wp-content/uploads/2013/05/Slides_LTP_09.pdfVariáveis compostas homogêneas unidimensionais O acesso a todos elementos de um array é realizado

Departamento de Engenharia Rural

Centro de Ciências Agrárias

Programação I

Page 2: Apresentação do PowerPointjeiks.net/wp-content/uploads/2013/05/Slides_LTP_09.pdfVariáveis compostas homogêneas unidimensionais O acesso a todos elementos de um array é realizado

Variáveis compostas

Os arrays também são conhecidos como variáveis compostas.

Page 3: Apresentação do PowerPointjeiks.net/wp-content/uploads/2013/05/Slides_LTP_09.pdfVariáveis compostas homogêneas unidimensionais O acesso a todos elementos de um array é realizado

Variáveis compostas

Correspondem a um certo número de posições de memória (variáveis) que podem ser acessadas através de um único identificador (nome da variável) e um índice.

Os índices, que geralmente devem ser apresentados junto com o nome da variável composta, servem para indicar a posição da variável que será feito o acesso (leitura/modificação).

Page 4: Apresentação do PowerPointjeiks.net/wp-content/uploads/2013/05/Slides_LTP_09.pdfVariáveis compostas homogêneas unidimensionais O acesso a todos elementos de um array é realizado

Variáveis compostas homogêneas unidimensionais

Os vetores são chamados de variáveis compostas homogêneas unidimensionais.

Page 5: Apresentação do PowerPointjeiks.net/wp-content/uploads/2013/05/Slides_LTP_09.pdfVariáveis compostas homogêneas unidimensionais O acesso a todos elementos de um array é realizado

Variáveis compostas homogêneas unidimensionais

Uma variável composta homogênea unidimensional é considerada:

composta porque não consiste de uma variável, mas de um conjunto de variáveis.

unidimensional porque é necessário apenas um índice para o acesso aos dados de uma posição da variável.

homogênea porque o conteúdo de todas as posições de memória será de um mesmo tipo especificado na declaração da variável.

Page 6: Apresentação do PowerPointjeiks.net/wp-content/uploads/2013/05/Slides_LTP_09.pdfVariáveis compostas homogêneas unidimensionais O acesso a todos elementos de um array é realizado

Variáveis compostas homogêneas unidimensionais

Declaração de arrays unidimensionais(Pascal):

Exemplo:

Var

<identificador>: array [<LI>..<LS>] of <tipo>;

Sendo:

LI: Limite inferior

LS: Limite superior

ambos expressões de um tipo ordinal

Var

Nota: array [1..10] of real;

Page 7: Apresentação do PowerPointjeiks.net/wp-content/uploads/2013/05/Slides_LTP_09.pdfVariáveis compostas homogêneas unidimensionais O acesso a todos elementos de um array é realizado

Variáveis compostas homogêneas unidimensionais

Acesso ao valor da n-ésima posição do array

Exemplos:

Pascal

...

<identificador_variavel>[indice]

{sendo indice uma expressão ordinal}

...

Utilizando uma constante para o índice: nota[1] := nota[2] * 0.02;

readln(nota[i]);

Utilizando uma variável para o índice:

Page 8: Apresentação do PowerPointjeiks.net/wp-content/uploads/2013/05/Slides_LTP_09.pdfVariáveis compostas homogêneas unidimensionais O acesso a todos elementos de um array é realizado

Variáveis compostas homogêneas unidimensionais

O acesso a todos elementos de um array é realizado elemento por elemento, isto é, para cada acesso deve-se especificar um índice.

Isto pode ser feito de forma prática utilizando-se uma estrutura de repetição e uma variável de controle para indicar o índice de acesso em cada iteração.

A ordem do acesso não é relevante pode-se percorrer os elementos em qualquer ordem:

direta, inversa, aleatória, etc.

Page 9: Apresentação do PowerPointjeiks.net/wp-content/uploads/2013/05/Slides_LTP_09.pdfVariáveis compostas homogêneas unidimensionais O acesso a todos elementos de um array é realizado

Variáveis compostas homogêneas unidimensionais

Considerando a variável nota (array de valores reais) declarada anteriormente:

O identificador NOTA fará referência à variável composta por 10 posições de memória, nas quais se pode armazenar um valor real (em cada uma posição).

O acesso ao valor de cada uma das notas será realizado como NOTA[x], onde x é um valor ou expressão ordinal (neste caso inteira).

Page 10: Apresentação do PowerPointjeiks.net/wp-content/uploads/2013/05/Slides_LTP_09.pdfVariáveis compostas homogêneas unidimensionais O acesso a todos elementos de um array é realizado

Variáveis compostas homogêneas unidimensionais

Supondo que a variável NOTA tenha sido previamente inicializada com os valores abaixo:

Conteúdo 60 70 90 62 55 91 100 ... 86

Índice 1 2 3 4 5 6 7 ... 10

NOTA

NOTA[3] referencia terceiro elemento do conjunto cujo conteúdo é 90 Exemplos: NOTA[3] := NOTA[3] +20; { = 90 + 20}

Conteúdo 60 70 110 62 55 91 100 ... 86

Índice 1 2 3 4 5 6 7 ... 10

Page 11: Apresentação do PowerPointjeiks.net/wp-content/uploads/2013/05/Slides_LTP_09.pdfVariáveis compostas homogêneas unidimensionais O acesso a todos elementos de um array é realizado

Variáveis compostas homogêneas unidimensionais

Conteúdo 60 70 90 62 55 91 100 ... 86

Índice 1 2 3 4 5 6 7 ... 10

NOTA

Sendo i uma variável do tipo inteiro: Se i = 6, a especificação NOTA[i] indica um acesso ao elemento de índice 6: no array acima seria então acessada a posição cujo valor atual é 91. Exemplos: writeln(nota[i-3]); {será impresso 90} writeln(nota[i div 4] + i); {será impresso 66 – não altera o valor da posição 1} writeln(nota[i div 3]); {será impresso 70} inc(nota[i +1], -7); {a posição 7 passa a armazenar o valor 93 (100 + (-7))} for i := 1 to n-1 do writeln(nota[i +1]); {serão impressos os valores da posição 2 à posição n}

Page 12: Apresentação do PowerPointjeiks.net/wp-content/uploads/2013/05/Slides_LTP_09.pdfVariáveis compostas homogêneas unidimensionais O acesso a todos elementos de um array é realizado

Variáveis compostas homogêneas unidimensionais

Escrever um programa em Pascal que faça a leitura de 10 notas de alunos de uma disciplina e armazene-as numa variável composta NOTA:

Program teste;

...

var

NOTA: array [1..10] of real;

...

begin

...

for i:= 1 to 10 do

Begin

writeln('Digite a nota do aluno ' , i);

readln(NOTA[I]);

end;

...

end.

Page 13: Apresentação do PowerPointjeiks.net/wp-content/uploads/2013/05/Slides_LTP_09.pdfVariáveis compostas homogêneas unidimensionais O acesso a todos elementos de um array é realizado

Referências

BORLAND. Turbo Pascal, versão 7.0. [S.L.] : Borland International, Inc.,1992.

DEITEL, P. J.; DEITEL, H.M.; Java: How to program, 9th ed, Ed. Prentice-Hall, 2011. ISBN: 978-0-13-257566-9.

FARRER, H.; BECKER, C. G.; FARIA, E. C.; MATOS, H. F.; et al. Algoritmos estruturados. 3ed, Ed. LTC, 1999. ISBN: 9788521611806.

FARRER, H.; BECKER, C. G.; FARIA, E. C.; MATOS, H. F.; et al. Pascal estruturado. 3ed, Ed. LTC, 1999. ISBN: 9788521611745.

GUIMARÃES, A. M.; LAGES, N. A. C.; Algoritmos e estruturas de dados. 1ed, Ed. LTC, 1994. ISBN: 9788521603788.

GRIFFITHS,D., BARRY,P., Head First Programming – A learner's guide to programming using the Python language, O´Reilly, 2009, 406p.

http://wwwusers.rdc.puc-rio.br/rmano/processo.html

Velloso, F. C.; Informática: Conceitos Básicos. 7ed, Ed. Campus, 2004. ISBN: 9788535215366.