Вы находитесь на странице: 1из 20

Estruturas de Dados

Varveis Compostas Heterogneas:


Registros

ESTRUTURAS DE DADOS

Inicialmente foi feita uma diviso imaginria (numrico,


caractere e lgico) com o objetivo de tornar mais simples a
classificao das informaes (dados) de um programa.
Exemplo 01 Declarao de variveis
inteiro: a;
real: x;
caracter: s;
logico: l;
a = 5;
x = 8.34;
s = c;
l = VERDADEIRO;
2

Em muitas situaes esses recursos so escassos.

ESTRUTURAS DE DADOS

As Estruturas de Dados so tipos de dados


(variveis) que podem ser construdos e organizados
a partir da composio dos tipos primitivos vistos
anteriormente e so classificados da seguinte forma:

Estrutura de Dados
Variveis Compostas Homogneas;
Unidimensionais (Vetores);
Multidimensionais (Matrizes).
Variveis Compostas Heterogneas
Registros

ESTRUTURAS DE DADOS
Variveis

Compostas Homogneas;

Unidimensionais (Vetores);
Multidimensionais (Matrizes).

VARVEIS COMPOSTAS HETEROGNEAS


So variveis compostas por diferentes tipos
primitivos.

Heterognea (1, 2, Carro, Alagoas, 3.55)

EXEMPLO

Em um sistema de vendas de passagens de uma


empresa de nibus temos as seguintes informaes:

TIPO

SADA

CHEGADA

KM

POLTRONA

VALOR

TOTAL

Convencional

14/11/10

19/11/10

314

01-02

R$ 100,00

R$ 200,00

A PASSAGEM DE NIBUS PODE SER FORMADA POR UM CONJUNTO


DE INFORMAES LOGICAMENTE RELACIONADAS, MAS DE TIPOS
DIFERENTES.
Como podemos
Armazenar estas
Nmero da passagem (numrico);
informaes em
Origem e Destino (caracteres);
um programa

Data (caracteres);
Horrio (numrico);
Poltrona (numrico);
Distncia (numrico);
Fumante (lgico: verdadeiro ou falso).

FREEMAT

No FreeMat as Variveis Compostas Heterogneas,


ou seja, as informaes logicamente relacionadas,
mas de tipos diferentes, podem ser armazenadas em
variveis do tipo registro.

Alguns detalhes que devem ser observados:


a) Varivel do tipo registro: passagem de nibus;
b) Cada campo do registro deve possuir um nome
associado a ele.
Nmero da passagem (numrico)
Origem e Destino (caracteres)
Data (caracteres)

Num
Origem/destino
Data

Horrio (numrico)

Horario

Poltrona (numrico)

Poltrona

Distncia (numrico)
Fumante (lgico:)

Dist
Fuma

REGISTRO: PASSAGEM DE NIBUS

10

EXEMPLO 1 - REGISTRO: CARRO

Marca

Modelo

Ano

Placa
Cor

Quais so as
informaes
associadas ao carro?

11

12

EXEMPLO 02: FAZER UM PROGRAMA PARA LER INFORMAES ESCOLARES


DE UM ALUNO E ARMAZEN-LOS EM UM REGISTRO.
Quais so as
informaes
associadas ao aluno?

Nome

Idade

Matricula

Serie

13

EXEMPLO 02: FAZER UM PROGRAMA PARA LER INFORMAES ESCOLARES


DE UM ALUNO E ARMAZEN-LOS EM UM REGISTRO.

Aluno = { };
Aluno.nome = input(Nome: , s);
Aluno.idade = input(Idade: );
Aluno.matri = input(Matricula: );
Aluno.serie = input(Serie: );
disp(Aluno);

14

E se ns desejarmos armazenar informaes sobre


vrios alunos?

Isso pode ser feito a partir da composio (combinao)


entre variveis compostas homogneas e heterogneas.

15

Variveis
Compostas
Homogneas
Variveis
Compostas
Heterogneas

registro 1
registro 2
registro 3
registro 4

No to
complicado
quanto parece!

16

Exemplo 03:
for i = 1:1:4
aux = { };
aux.nome = input(Nome: ,s);
aux.idade = input(Idade: );
aux.matri = input(Matricula: );
aux.serie = input(Serie: );

aluno(i) = aux;
end
for i = 1:1:4
disp(aluno(i));
end

17

EXERCCIOS 03: FAZER UM PROGRAMA PARA LER E ARMAZENAR


INFORMAES SOBRE N ALUNOS. AS INFORMAES SO: NOME,
MDIA, APROVADO (S OU N) E SEXO (M OU F).
PEDE-SE AINDA PARA IMPRIMIR O NMERO DE MULHERES APROVADAS.

Passos:

1 - Fazer leitura do nmero de alunos n;


2 - Fazer leitura das informaes dos alunos;
3 - Contabilizar o nmero de mulheres aprovadas;
4 - imprimir resultado na tela.

18

EXERCCIOS 03: FAZER UM PROGRAMA PARA LER E ARMAZENAR INFORMAES


SOBRE N ALUNOS. AS INFORMAES SO: NOME, MDIA, APROVADO (S OU N) E
SEXO (M OU F). PEDE-SE AINDA PARA IMPRIMIR O NMERO DE MULHERES
APROVADAS.

19

COLOCAR AS OPES ABAIXO NO


PROGRAMA DO EXEMPLO ANTERIOR

Armazenar as notas dos alunos;

Prova 1
Prova 2

Calcular a mdia dos alunos

Mdia = 0.3*(prova1) + 0.7*(prova2)

Imprimir a maior nota e o nome do aluno;


Imprimir listagem com o nome dos alunos
aprovados e suas notas;

20