A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

ESTRUTURAS DE DADOS Algoritmos – Aula 04. Estruturas de Dados  Tópicos  Vetores  Matrizes  Registros  Registro de Conjuntos  Conjuntos de Registros.

Apresentações semelhantes


Apresentação em tema: "ESTRUTURAS DE DADOS Algoritmos – Aula 04. Estruturas de Dados  Tópicos  Vetores  Matrizes  Registros  Registro de Conjuntos  Conjuntos de Registros."— Transcrição da apresentação:

1 ESTRUTURAS DE DADOS Algoritmos – Aula 04

2 Estruturas de Dados  Tópicos  Vetores  Matrizes  Registros  Registro de Conjuntos  Conjuntos de Registros

3 Estruturas de Dados  Os tipos primitivos (inteiro, real, caracter e lógico) não são suficientes para representar todos os tipos de informação.  Particularmente quando temos mais de uma informação relacionada. Ex: Lista dos nomes dos alunos de uma sala, endereço de alguém etc.  Utilizaremos os tipos primitivos para construir outras estruturas de dados mais complexas.

4 Vetores  Também denominados Estruturas compostas homogêneas unidimensionais  Permitem a manipulação de um conjunto de informações de um mesmo tipo primitivo  Declaração : tipo CLASSE = vetor [1.. 40] de reais; CLASSE: VCLASSE; Onde:  CLASSE: Nome do tipo que está sendo construído  1: Limite inicial do vetor  40: Limite final do vetor  reais: Tipo primitivo base do vetor  VCLASSE: Nome da variável criada cf o tipo construído

5 Vetores  Manipulação: inteiro: A; VCLASSE [ 7 ]  6,5; 6,57,85,3 VCLASSE VCLASSE [ 2 ]  7,8; VCLASSE [ 4 ]  5,3; leia (A); // supondo que foi informado 6 VCLASSE [ A ]  9,8; VCLASSE [ A-1 ]  9,1; leia ( VCLASSE [ A+3 ] ); // supondo que foi informado 4,7 9,89,14,7

6 Vetores início inteiro: NotaAcima; real: A, B, C, D, E, F, G, H, I, J, Média; NotaAcima  0; leia (A,B,C,D,E,F,G,H,I,J); Média  (A + B + C + D + E + F + G + H + I + J)/10; se (A > Média) então NotaAcima  NotaAcima + 1; fimse; se (B > Média) então NotaAcima  NotaAcima + 1; fimse;... se (J > Média) então NotaAcima  NotaAcima + 1; fimse; escreva (NotaAcima); fim. Algoritmo 4.1 – Notas acima da média usando variáveis simples

7 Vetores início tipo Classe = vetor [1.. 10] de reais; Classe: VClasse; inteiro: NotaAcima, X; real: Soma, Média; Soma  0; NotaAcima  0; para X de 1 até 10 passo 1 faça leia ( VClasse[X] ); Soma  Soma + VClasse[X]; fimpara; Média  Soma / 10; para X de 1 até 10 passo 1 faça se ( VClasse[X] > Média ) então NotaAcima  NotaAcima + 1; fimse; fimpara; escreva (NotaAcima); fim. Algoritmo 4.2 – Notas acima da média usando vetor

8 Matrizes  Também denominadas Estruturas compostas homogêneas multidimensionais  Permitem a manipulação de um conjunto de informações de um mesmo tipo primitivo  Declaração: int SALA [4][5]; Onde:  SALA: Nome da matriz  4: capacidade da primeira dimensão  5: capacidade da segunda divisão.  int: Tipo primitivo base da matriz

9 Matrizes  Manipulação: Int A, B; SALA [ 1][2] = 5; MSALA SALA [ 2][1]= 6; SALA [ 0][1 ] = 7; A = 3; SALA [ A][B ]  8; SALA [ A ][B-2 ] = 9; SALA [ A-2 ][B-2 ] = 10; SALA [ B ][ A ] = 11; SALA [ B-2 ][ A ] = 12; B = 2;

10 Matrizes  Exemplo: Cartão da Loteria Esportiva JgColuna 1EptColuna 2 1SantosCorinthians 2FlamengoFluminense 3PalmeirasSão Paulo 4VascoBotafogo 5PortuguesaXV de jaú 6São CaetanoXV de Piracicaba 7GrêmioInternacional 8HavaíFigueirense 9CoritibaAtlético-PR 10PaysandúJuventude 11Atlético-MGCruzeiro 12BrasiliensePonte Preta 13FortalezaGoiás 14EsportivoLondrina

11 Matrizes int Loteria[14][3]; int I, J, maisMar, nJogo, marLin; maisMar = 0; for(int I = 0; i<14; i++){ marLin = 0; for( int J = 0; j <3; j++){ if(mLoteria[I][J] ==1){ marLin = marLin + 1; } } if(marLin > maisMar} { maisMar = marLin; nJogo = I; } } cout << “Jogo mais marcado: " << nJogo << "com " << maisMar; Algoritmo 4.3 – Loteria Esportiva, jogo mais marcado

12 Matrizes int Loteria [14][ 3]; inteiro I, J, maisMar, nColuna, marCol; maisMar = 0; for(int J=0; J<3; J++){ marCol=0; for(int I=0 ; I<14; I++){ if(mLoteria[ I][J] == 1){ marCol = marCol + 1; } } if(marCol > maisMar){ maisMar = marCol; nColuna = J; } } cout << "Coluna mais marcada: " << nColuna << "com " << maisMar; Algoritmo 4.4 – Loteria Esportiva, coluna mais marcada

13 Registros  Também denominadas Estruturas compostas heterogêneas  Permitem a manipulação de um conjunto de informações de tipos primitivos diferentes Exemplo: Passagem de ônibus Número: 0001 De: ____________________ Para: _______________________ Data: ____ / ____ / _______ Horário: ________ : _________ Poltrona: ____________ Distância: ____________ km

14 Registros  Declaração: tipo regPassagem = registro inteiro: Número; caracter: Origem, Destino, Data, Horário; inteiro: Poltrona; real: Distância; fimregistro; regPassagem: Passagem; Manipulação: leia (Passagem); escreva (Passagem); leia (Passagem.Origem); escreva (Passagem.Destino); Passagem.Distância  500;

15 Registro de Conjuntos  Combinação de estruturas heterogêneas com homogêneas  Podem ser obtidas ao incluir num registro outro tipo de dados construído Exemplo: Registro de Estoque com Baixa semanal Nome: _____________________________________________ Código: ___________________ Preço: __________________ Baixa

16 Registro de Conjuntos  Declaração: tipo vDias = vetor [ ] de inteiros; tipo regProd = registro caracter: Nome; inteiro: Código; real: Preço; vDias: Baixa; fimregistro; regProduto: Produto; Manipulação: escreva (Produto.Nome); escreva (Produto.Código); escreva (Produto.Preço); escreva (Produto.Baixa [ 1 ]); Produto.Baixa [ 4 ]  500;

17 Conjunto de Registros  Combinação de estruturas homogêneas com heterogêneas  Podem ser obtidas ao formar um conjunto com outro tipo de dados construído Exemplo: Ônibus formado por Passagem Número: 0001 De: ____________________ Para: _______________________ Data: ____ / ____ / _______ Horário: ________ : _________ Poltrona: ____________ Distância: ____________ km

18 Conjunto de Registros  Declaração: tipo regPassagem = registro inteiro: Número; caracter: Origem, Destino, Data, Horário; inteiro: Poltrona; real: Distância; fimregistro; Tipo vetPassagem = vetor [ ] de regPassagem; vetPassagem: Ônibus; Manipulação: leia (Passagem [ 7 ]); escreva (Passagem [ 4 ]); leia (Passagem [12].Origem); escreva (Passagem [21].Destino); Passagem [34].Distância  500;


Carregar ppt "ESTRUTURAS DE DADOS Algoritmos – Aula 04. Estruturas de Dados  Tópicos  Vetores  Matrizes  Registros  Registro de Conjuntos  Conjuntos de Registros."

Apresentações semelhantes


Anúncios Google