Baixe o app para aproveitar ainda mais
Prévia do material em texto
Estrutura de Dados Homogeˆneas Profa.Dra.Thatyana de Faria Piola Seraphim (ECO) Prof.Dr.Enzo Seraphim (ECO) Prof.MSc.Rodrigo Maximiano Antunes de Almeida (ELT) Prof.MSc.Joa˜o Paulo Reus Rodrigues Leite (ECA) Prof.Dr.Carlos Henrique Vale´rio de Morais (ECA) Universidade Federal de Itajuba´ thatyana@unifei.edu.br seraphim@unifei.edu.br rodrigomax@unifei.edu.br joaopaulo@unifei.edu.br valerio@unifei.edu.br ECO002 / ELT102 Estrutura de Dados Homogeˆneas Estrutura de Dados Homogeˆneas Estruturas de dados homogeˆnas permitem trabalhar com o agrupamento de va´rias informac¸o˜es dentro de uma mesma varia´vel; o agrupamento sempre obedece ao mesmo tipo de dados; o uso deste tipo de estrutura recebe va´rios nomes como: varia´veis indexadas, varia´veis compostas, varia´veis subscritas, arranjos, vetores, matrizes, tabelas em memo´ria (array); sa˜o va´rios nomes encontrados na literatura para o estudo de te´cnicas de programac¸a˜o que envolvem a utilizac¸a˜o das estruturas homogeˆneas de dados. ECO002 / ELT102 Estrutura de Dados Homogeˆneas Estrutura de Dados Homogeˆneas Vetores ou Matrizes de uma Dimensa˜o Um vetor e´: uma varia´vel composta unidimensional formada por uma sequeˆncia de varia´veis; todas as varia´veis do mesmo tipo e com o mesmo identificador (mesmo nome); alocado sequencialmente na memo´ria; varia´veis com o mesmo nome sa˜o diferenciadas por um ı´ndice. O ı´ndice referencia sua localizac¸a˜o dentro da estrutura. os nomes dados aos vetores seguem as mesmas regras de nomes utilizados para indicar varia´veis simples. ECO002 / ELT102 Estrutura de Dados Homogeˆneas Estrutura de Dados Homogeˆneas Vetores ou Matrizes de uma Dimensa˜o Declarac¸a˜o de Vetor var variavel : vetor [<dimensa˜o>] de <tipo> varia´vel: e´ o nome da varia´vel do tipo vetor. dimens~ao: indica os valores inicial e final do tamanho do vetor. tipo: e´ o tipo ba´sico de dados que sera´ utilizado (inteiro, real, caracteres, lo´gico, entre outros). ECO002 / ELT102 Estrutura de Dados Homogeˆneas Estrutura de Dados Homogeˆneas Vetores ou Matrizes de uma Dimensa˜o Importante As varia´veis simples podem conter apenas um valor por vez. Os vetores podem armazenar mais de um valor por vez, podendo manipular uma quantidade maior de informac¸o˜es com pouco trabalho. A manipulac¸a˜o dos elementos do vetor ocorre de forma individualizada, pois na˜o e´ poss´ıvel efetuar a manipulac¸a˜o de todos os elementos do conjunto ao mesmo tempo. ECO002 / ELT102 Estrutura de Dados Homogeˆneas Estrutura de Dados Homogeˆneas Vetores ou Matrizes de uma Dimensa˜o Carregando um vetor para i de 1 ate 5 faca escreva(“Digite o valor de i = “) leia(x[i]) {95,13,25,47,6} fimpara ECO002 / ELT102 Estrutura de Dados Homogeˆneas Estrutura de Dados Homogeˆneas Vetores - Leitura dos Dados Leitura dos dados A leitura de um vetor e´ processada passo a passo, um elemento por vez. A instruc¸a˜o de leitura e´ leia seguida da varia´vel mais o ı´ndice. Exerc´ıcio Fac¸a um algoritmo que realiza a leitura de 8 notas e as armazena em um vetor de 8 posic¸o˜es. O algoritmo deve fazer a soma de todas as notas e calcular e imprimir a me´dia das notas. ECO002 / ELT102 Estrutura de Dados Homogeˆneas Estrutura de Dados Homogeˆneas Vetores - Leitura dos Dados - Atividade Algoritmo: leitura de 8 notas, ca´lculo e impressa˜o da me´dia. algoritmo “mediaTurma” var md : vetor [1..8] de real soma, media : real i : inteiro inicio soma <– 0 para i de 1 ate 8 faca escreva(“Digite um valor = “) leia(md[i]) soma <– soma + md[i] fimpara media <– (soma / 8) escreval(“Media = “, media) fimalgoritmo ECO002 / ELT102 Estrutura de Dados Homogeˆneas Estrutura de Dados Homogeˆneas Vetores - Escrita dos Dados Escrita dos dados O processo de escrita e´ bastante parecido com o processo de leitura de seus elementos. E´ utilizada a instruc¸a˜o escreva seguida da indicac¸a˜o da varia´vel e seu ı´ndice. Algoritmo Fac¸a um algoritmo que imprime o valor das notas armazenadas no vetor antes de apresentar o valor da me´dia final. ECO002 / ELT102 Estrutura de Dados Homogeˆneas Estrutura de Dados Homogeˆneas Vetores - Escrita dos Dados Algoritmo para imprimir o valor das notas algoritmo “mediaTurma” var md : vetor [1..8] de real soma, media : real i : inteiro inicio soma <– 0 para i de 1 ate 8 faca escreva(“Digite um valor = “) leia(md[i]) soma <– soma + md[i] fimpara para i de 1 ate 8 faca escreva(md[i]) fimpara media <– (soma / 8) escreval(“Media = “, media) fimalgoritmo ECO002 / ELT102 Estrutura de Dados Homogeˆneas Estrutura de Dados Homogeˆneas Matrizes Definic¸a˜o de Matriz Uma matriz e´ uma varia´vel composta bidimensional formada por uma sequeˆncia de varia´veis, todas do mesmo tipo, com o mesmo identificador (mesmo nome) e alocadas sequencialmente na memo´ria. Independente se as varia´veis teˆm o mesmo nome, o que as distingue sa˜o os ı´ndices que referenciam sua localizac¸a˜o dentro da estrutura. Para a manipulac¸a˜o de matrizes e´ utilizado uma instruc¸a˜o de looping (enquanto, para ou repita). Matrizes com mais de uma dimensa˜o, devera´ ser utilizado o nu´mero de loopings relativos ao tamanho de sua dimensa˜o. ECO002 / ELT102 Estrutura de Dados Homogeˆneas Estrutura de Dados Homogeˆneas Matrizes Por exemplo, uma matriz de duas dimenso˜es devera´ ser controlada com dois loopings, sendo que de treˆs dimenso˜es devera´ ser controlada por treˆs loopings. Os elementos de matrizes bidimensionais sa˜o manipulados de forma individualizada, sendo a refereˆncia feita atrave´s de dois ı´ndices: linha: indica a quantidade de linhas que va˜o compor a matriz; coluna: indica a quantidade de colunas que va˜o compor a matriz. Uma matriz de duas dimenso˜es sera´ atribu´ıda pelas instruc¸o˜es ja´ utilizadas para definir o uso de um vetor. ECO002 / ELT102 Estrutura de Dados Homogeˆneas Estrutura de Dados Homogeˆneas Matrizes Declarac¸a˜o de Matriz var variavel : vetor [<dimensao01>,<dimensao02>] de <tipo> variavel: indica o nome da varia´vel do tipo matriz. dimensao01: indica a quantidade de linhas que va˜o compor a matriz. dimensao02: indica a quantidade de colunas que va˜o compor a matriz. tipo: indica o tipo de dado que podera´ ser armazenado na sequeˆncia de varia´veis que formam a matriz. ECO002 / ELT102 Estrutura de Dados Homogeˆneas Estrutura de Dados Homogeˆneas Matrizes Carregando uma matriz para i de 1 ate 3 faca escreva(“Digite o numero da linha = “, i) para j de 1 ate 3 faca escreva(“Digite o numero da coluna = “, j) leia(x[i,j]) fimpara fimpara ECO002 / ELT102 Estrutura de Dados Homogeˆneas Estrutura de Dados Homogeˆneas Matrizes - Leitura dos dados Leitura dos dados A leitura dos dados e´ processada passo a passo, um elemento por vez. A instruc¸a˜o de leitura e´ leia seguida da varia´vel mais os ı´ndices de linha e coluna. Exemplo Fac¸a um algoritmo que realiza a leitura de 4 notas bimestrais de 8 alunos. As notas sera˜o armazenadas em uma matriz. ECO002 / ELT102 Estrutura de Dados Homogeˆneas Estrutura de Dados Homogeˆneas Matrizes - Leitura dos dados Algoritmo para fazer a leitura de 4 notas bimestrais de 8 alunos algoritmo “lerElementos” var notas : vetor [1..8,1..4] de real i, j : inteiro inicio para i de 1 ate 8 faca escreva(“Digite a nota do aluno = “, i) para j de 1 ate 4 faca leia(notas[i,j]) fimpara fimpara fimalgoritmo ECO002 / ELT102 Estrutura de Dados Homogeˆneas Estrutura de Dados Homogeˆneas Matrizes - Escrita dos dados Algoritmo para fazer a leitura de 4 notas bimestrais de 8 alunos Algoritmo “lerElementos” Var notas : vetor [1..8,1..4] de real i, j : inteiro inicio para i de 1 ate 8 faca escreva(“Digite a nota do aluno = “, i) para j de 1 ate 4 faca leia(notas[i,j]) fimpara fimpara escreval(“Impressao dos valores armazenados na matriz”) para i de 1 ate 8 faca para j de 1 ate 4 faca escreva(notas[i,j]) fimpara fimpara fimalgoritmo ECO002 / ELT102 Estrutura de Dados Homogeˆneas
Compartilhar