Universidade Federal de Campina Grande
Centro de Engenharia Elétrica e Informática
Departamento de Sistemas e Computação
Disciplina: Técnicas de Programação
Prof.: José Eustáquio Rangel de Queiroz
GUIA DE LABORATÓRIO 02 – MÓDULO I
SEMESTRE 2013-1
DATA:
/ /2013 (TURMA 01)
Matrícula
Nome
Nota
1. Objetivo Geral
Os experimentos contidos neste guia de laboratório têm como objetivo o estudo
do tipo estruturado class.
2. Experimento 1
Defina uma classe denominada Complexo, destinada à representação de números
complexos. Lembre-se de que a forma geral de um número complexo é a + ib, na
qual a representa a parte real do número e b sua parte imaginária (i indica
imaginário). Use variáveis double na representação dos dados da classe e inclua um
construtor que inicialize com valores default objetos desta classe, quando forem
declarados. Crie funções-membros para a classe Complexo, as quais deverão
executar as seguintes ações:
a. somaComplexo/subtraiComplexo, as quais retornam, respectivamente, a soma e
a diferença de dois números complexos [Lembre-se de que (a + ib) ± (c + id) = (a
+ c) ± i(b + d)];
b. multiplicaComplexo/divideComplexo, as quais retornam, respectivamente, o
produto e a razão de dois números complexos [Lembre-se de que (a + ib) * (c + id)
= (a.c - b.d) + i(a.d + b.c) e que (a + ib) / (c + id) = ((a.c + b.d) + i(b.c - a.d))/(c2
+ d2)];
c. restoDivisao, a qual retorna o resto da divisão de dois números complexos;
d. normaComplexo, a qual retorna a norma de um número complexo (a, bi);
e. argComplexo, a qual retorna o argumento (fase) de um número complexo (a, bi);
f. conjComplexo, a qual retorna o conjugado de um número complexo (a, bi);
g. polarComplexo, a qual transforma para a forma polar um número complexo na
forma retangular (ou cartesiana); e
h. imprimeComplexo, na forma (a, b), na qual a é a parte real e b a parte
imaginária.
Crie um programa para testar a classe.
Obs.: Cada uma
específica.
destas
opções
deverá
ser
implementada
em
uma
função
3. Experimento 2
Crie uma classe Elevador para armazenar informações relativas a um elevador de
passageiros instalado no interior de um edifício, a saber: (i) o andar atual
(considerar o térreo como 0); (ii) o total de andares do edifício (excluindo o térreo);
(iii) a capacidade do elevador; e (iv) o número de passageiros no interior do
elevador. Também deverão ser implementadas as seguintes funções-membros:
a) iniciaElevador, a qual recebe como parâmetros a
capacidade do elevador e o total de andares do edifício
(elevadores sempre partem inicialmente do térreo ou
de um andar vazado);
b) entraElevador, a qual acrescenta um passageiro ao
grupo de passageiros do elevador, somente se ainda
houver espaço;
c) saiElevador, a qual remove um passageiro do elevador,
somente se houver pelo menos um passageiro em seu
interior;
d) sobeUmAndar, a qual deve deslocar o elevador para um
andar acima da posição atual, caso este ainda não
esteja no último andar;
e) desceUmAndar, a qual deve deslocar o elevador para
um andar abaixo da posição atual, caso este ainda não
esteja no térreo); e
f) Funções-membros para a visualização de cada um dos dados armazenados.
Obs.: Cada uma
específica.
destas
opções
deverá
ser
implementada
em
uma
função
4. Experimento 3
Construa uma classe Televisão com dois controles, a saber: (i) de volume do som,
o qual permite ao usuário aumentar ou diminuir o volume de som em uma unidade
de cada vez; e (ii) de seleção de canal, o qual permite ao usuário incrementar ou
decrementar o número do canal em uma unidade, possibilitando também selecionar
qualquer canal desejado. Na aplicação de teste, crie uma televisão e teste a seleção
de canais tanto por incremento/decremento quanto por indicação do canal desejado.
Teste também o ajuste do volume para diferentes valores. Apresente, ao final, uma
síntese dos ajustes do teste.
Obs.: Cada uma
específica.
destas
opções
deverá
ser
implementada
em
uma
função
SUCESSO!
Download

Guia de Laboratorio 02 2013.1 T1