A maior rede de estudos do Brasil

Grátis
15 pág.
Algoritmos1_Aula16-Registro

Pré-visualização | Página 1 de 1

Registro
Algoritmos I
Prof. Thiago Meirelles Ventura
UFMT – IC – 2013/1
Introdução
Tipo de dado
estruturado heterogêneo
Introdução
Até o momento, uma variável poderia armazenar apenas 1 valor, de apenas 1 tipo
Com os registros, é possível armazenar mais de um valor, de tipos diferentes
Introdução
56
-32,789
Falso
‘H'
“teste”
variável
variável
variável
variável
variável
-100
14,5
“Alg I”
registro
Declaração
Há uma área específica para declarar novos tipos.
algoritmo RegistroExemplo
tipos
 ...
variáveis
 ...
início
 ...
fim algoritmo
Declaração
Há uma área específica para declarar novos tipos.
Definindo o tipo
algoritmo RegistroExemplo
tipos
 pessoa = registro
 matricula, nome : string
 altura : inteiro
 fimregistro
variáveis
 ...
início
 ...
fim algoritmo
Declaração
Há uma área específica para declarar novos tipos.
Definindo a variável
algoritmo RegistroExemplo
tipos
 pessoa = registro
 matricula, nome : string
 altura : inteiro
 fimregistro
variáveis
 aluno : pessoa
início
 ...
fim algoritmo
Acesso das informações
Como acessar um elemento dentro de um registro?
Utilizar o operador de seleção de campo: .
Acesso das informações
Como acessar um elemento dentro de um registro?
Utilizar o operador de seleção de campo: .
algoritmo RegistroExemplo
tipos
 pessoa = registro
 matricula, nome : string
 altura : inteiro
 fimregistro
variáveis
 aluno : pessoa
início
 aluno.matricula <- “200411310018”
 aluno.nome <- “Thiago”
 aluno.altura <- 180
fim algoritmo
Restrições
Não utilize o comando de escreva ou de leia passando apenas o registro como parâmetro
Nesses comandos, passe qual elemento do registro deve ser escrito ou lido.
algoritmo RegistroExemplo
tipos
 ...
variáveis
 aluno : pessoa
início
 leia (aluno.matricula)
 ...
 escreva (aluno.altura)
fim algoritmo
Exercício 1
Definir um tipo de dado que contenha dados do ano, nome do mês e dia de uma data. 
Escreva o trecho de código que a inicialize com a data de nascimento do usuário.
Exercício 1
algoritmo DataNascimento
tipos
 data = registro
 ano, dia : inteiro
 mes : string
 fimregistro
variáveis
 nascimento : data
início
 escreva (“Informe o dia em que você nasceu:”)
 leia (nascimento.dia)
 escreva (“Informe o mês em que você nasceu:”)
 leia (nascimento.mes)
 escreva (“Informe o ano em que você nasceu:”)
 leia (nascimento.ano)
 escreva (“Você nasceu em “, nascimento.dia “ de “, 
 nascimento.mes, “ de ”, nascimento.ano ) 
fim algoritmo
Exercício 2
Definir um tipo de dado que contenha informações de um medicamento:
Código 
Descrição
Data de validade
A data de validade é um tipo independente
Declarar uma variável deste tipo e inicializá-la com estas informações:
Código: 367
Descrição: Medicamente para gripe
Data de validade: 28/09/2020
Exercício 3
Definir três tipos de dados
um que represente um ponto com coordenadas cartesianas
um que represente um ponto com coordenadas polares
um que utilize os tipos anteriores, que represente uma reta definida por dois pontos, um em coordenadas cartesianas e outro em polares. 
Declare duas variáveis representando retas e escreva um trecho de código inicializando uma destas variáveis.
Exercício 3
algoritmo Retas
tipos
 cartesiano = registro
 x, y : real
 fimregistro
 polar = registro
 t, r : real
 fimregistro
 reta = registro
 p1 : cartesiano
 p2 : polar
 fimregistro
variáveis
 reta1, reta2 : reta
início
 reta1.p1.x <- -45.5
 reta1.p1.y <- 201
 reta1.p2.t <- 85
 reta1.p2.r <- 32,7
fim algoritmo