• Nenhum resultado encontrado

Laboratório 11 Estruturas. Departamento de Sistemas e Informática. Disciplina de Introdução à Programação Ano Lectivo 2006/2007

N/A
N/A
Protected

Academic year: 2021

Share "Laboratório 11 Estruturas. Departamento de Sistemas e Informática. Disciplina de Introdução à Programação Ano Lectivo 2006/2007"

Copied!
5
0
0

Texto

(1)

Instituto Politécnico de Setúbal

Escola Superior de Tecnologia

Departamento de Sistemas e Informática

Laboratório 11 – Estruturas

Disciplina de Introdução à Programação

Ano Lectivo 2006/2007

(2)

Série 8 – Utilização de estruturas

Objectivos da Série:

Com esta série de exercícios pretende-se que o aluno:

1. Perceba a necessidade e a utilidade na utilização de estruturas. 2. Reconheça a diferença entre estruturas e vectores.

3. Pratique o acesso a membros de estruturas e a passagem de estruturas para subprogramas.

4. Conheça a definição de novos tipos de dados por uma questão de simplificação.

Exercício 1

De entre as seguintes definições de estruturas e novos tipos de dados e declarações de variáveis, indique as que são inválidas e apresente os argumentos em que se baseia a sua decisão:

1- Struct Data {

int dia, ano; char mes[12]; } 2- struct Pessoa { int idade; char nome[60]; } Paulo;

3- struct Pessoa Carlos, Tobias;

4- struct {

int dia, mes, ano;

};

5- typedef struct Aluno {

int num;

char email[30], nome[60];

} ALUNO;

6- struct ALUNO hulk;

7- ALUNO barnabe, lista_alunos[10];

8- struct {

int dia, mes, ano; } data_nasc;

(3)

9- struct Data { int dia, ano; char mes[12];

} data_inicial = {23,”Jan”,1998};

10- typedef struct Data TDATA;

11- TDATA tabela[2] = {{12,1999,”Mar”}, {01,2001,”Dez”}};

12- typedef struct {

int num;

char nome[50];

TDATA dt_matricula;

} ALUNINHOOO;

13- struct ALUNINHOOO a1={232456,”passos dias aguiar”,{2,06,”Nov”}};

12- typedef struct al {

int num;

char nome[50]; struct Data {

int dia, ano;

char mes[12];

} dt_matricula; } ALUNINHOOO alunoX;

Exercício 2

Desenvolva um programa em que:

- Declare um novo tipo denominado pessoa que contenha o nome, idade, salário e data de nascimento. typedef struct { int Dia; char Mes[3+1]; int Ano; } DATA;

typedef struct pessoa {

char Nome[100];

int Idade; float Salario;

DATA dt_Nasc;

} TPESSOA;

(4)

- Adicione um dia à data de nascimento da variável simples.

- Actualize a segunda pessoa do vector colocando 1999 no ano da data. - Altere o mês da última pessoa do vector para “NOV”.

- Mostre no ecrã a primeira letra de cada um dos meses das pessoas do vector.

- Escreva um subprograma que permita escrever no ecrã os valores existentes numa estrutura do tipo TPESSOA recebida como argumento.

- Escreva um subprograma que carregue os dados para uma estrutura TPESSOA a partir do teclado.

- Utilize os subprogramas anteriores para preencher e mostrar o vector de 3 pessoas.

Exercício 3

Escreva um programa que, para um parque de estacionamento, após ler os momentos de chegada e de partida apresente no ecrã o preço a cobrar pelo estacionamento. A

especificação mais detalhada do problema encontra-se nos acetatos (16 e 17) sobre estruturas.

Exercício 4

Desenvolva uma aplicação para registo e consulta de veículos automóveis para stand de usados.

a) Defina um novo tipo de dados chamado Automovel que tenha a seguinte informação: • Marca • Ano • Nº Série motor • Cor • Preço

b) Defina um subprograma chamado Construtor que inicie os valores dos campos de um Automovel.

c) Defina os seguintes subprogramas “selectores”: • getMarca – retorna o valor do campo marca. • getAno – retorna o valor do campo ano. • getSerie – retorna o valor do campo Série. • getCor – retorna o valor do campo Cor. • getPreco – retorna o valor do campo Preço. d) Defina o seguinte subprograma “modificador”:

(5)

e) No programa principal:

• Crie uma base de dados de informação de automóveis (através da criação de um vector de Automóveis).

• E teste os próximos subprogramas. f) Defina os seguintes subprogramas:

• PreencheBD – para preenchimento da base de dados.

• ProcuraMarca – lista os automóveis de uma determinada marca. • ProcuraAno – lista os automóveis de um determinado ano.

• AlteraPreco - actualiza o preço para automóveis de um determinado ano. • QuantosMarcaAno – determina quantos automóveis existem de uma

determinada marca do ano X com preço abaixo de precoN.

• ListaAutomovelOrdemSerie – lista todas as características de um automóvel pelo seu nº de série (ordem crescente).

Referências

Documentos relacionados

Para Souza (2004, p 65), os micros e pequenos empresários negligenciam as atividades de planejamento e controle dos seus negócios, considerando-as como uma

Desse modo, a escola e a mídia são significadas como um lugar de consolidação de imagens sobre a língua, através do ensino de língua portuguesa, estabilizando-as a

Atualmente os currículos em ensino de ciências sinalizam que os conteúdos difundidos em sala de aula devem proporcionar ao educando o desenvolvimento de competências e habilidades

Apesar de o mercado acionário brasileiro ter se tornado mais importante para a economia brasileira, sobretudo entre o período de 2002 para 2005 (Tabela 3), sua repre- sentatividade

Local de realização da avaliação: Centro de Aperfeiçoamento dos Profissionais da Educação - EAPE , endereço : SGAS 907 - Brasília/DF. Estamos à disposição

Promovido pelo Sindifisco Nacio- nal em parceria com o Mosap (Mo- vimento Nacional de Aposentados e Pensionistas), o Encontro ocorreu no dia 20 de março, data em que também

Podem treinar tropas (fornecidas pelo cliente) ou levá-las para combate. Geralmente, organizam-se de forma ad-hoc, que respondem a solicitações de Estados; 2)

Dessa forma, a partir da perspectiva teórica do sociólogo francês Pierre Bourdieu, o presente trabalho busca compreender como a lógica produtivista introduzida no campo