Você está na página 1de 3

Segunda Lista de Exerccios Programao Orientada a Objetos Pronatec

Parte I - Crie uma aplicao em PHP OO para resolver os seguintes problemas:


1. Crie uma pessoa, coloque seu nome e idade iniciais, faa alguns aniversrios (aumentando a idade) e imprima seu nome e sua idade. 2. Escreva uma classe EntradaDeCinema com as seguintes informaes (atributos): Filme Data Horrio Sala Valor do Ingresso Desconto E com as seguintes aes (mtodos): Construtor: tem a finalidade de inicializar todos os atributos. Clculo de Desconto: deve calcular o valor do desconto na compra do(s) ingresso(s), recebendo como parmetro um valor lgico (verdadeiro/falso ou 0/1) que informe se o cliente estudante ou no e, se for, deve ser concedido 50% de desconto no valor do ingresso de entrada. Impresso da entrada: deve imprimir todos os dados do ingresso de entrada.

3. Altere o algoritmo do exerccio 3 da primeira lista incluindo um teste do sexo da pessoa e mostre a mensagem de acordo com a tabela abaixo: Resultado IMC para homes IMC para mulheres Abaixo do peso Menor que 20,7 Menor que 19 No peso ideal Entre 20,7 e 26,4 Entre 19 e 25,8 Acima do peso ideal Entre 26,4 e 32,3 Entre 25,8 e 31,1 Obeso Maior que 32,3 Maior que 31,1 4. A locadora de veculos Locafcil aluga diferentes tipos de veculos, cada um com um valor para locao, conforme a tabela abaixo: Tipo de Veculo Valor da Locao (dirio)

Passeio Utilitrios de pequeno porte Utilitrios de grande porte Transporte de passageiros

R$ 60,00 R$ 100,00 R$ 200,00 R$ 250,00

Implemente um controle de alocao para os veculos considerando que na locao deve ser informado o veculo (placa, ano, fabricante, modelo, quilometragem rodada no momento da locao). Na devoluo do veculo dever ser informado os dias em que o veculo ficou alugado e a quilometragem no momento da devoluo. A aplicao dever calcular o valor da locao multiplicando o valor da locao do veculo pelos dias de locao, e acrescendo R$ 1,00 por quilometro rodado que tenha excedido o limite de 200 Km rodados na locao. Crie um menu com as duas opes para o usurio: Alugar e Devolver.

5. Ns queremos programar uma verso simplificada do mascote digital, o Tamagotchi, que fez muito sucesso entre as crianas nos anos 90.

Ele ter duas caractersticas marcantes:


Vidas (0 a 7) Energia (0 a 100)

a) (0,2) Construa uma classe Mascote, com as duas caractersticas como atributo. b) (0,4) Faa um mtodo construtor, que atribua 7 vidas e 100 unidades de energia para o mascote. c) (0,2) Construa mtodos de acesso adequados. d) (0,4) Construa um mtodo que imprima o estado do objeto. e) (0,8) Implemente um mtodo que aumente ou reduza a energia do Mascote, de um valor passado por parmetro (que pode ser positivo ou negativo). No permitida energia acima do limite mximo especificado acima. Caso tenha atingido 0 ou menos de energia, uma vida ser perdida; este mtodo deve anunciar a morte do bichinho caso a ltima vida seja perdida, ou ento, ele deve anunciar quantas vidas ainda tem e deve voltar a ter energia mxima. 6. Caverna do Drago um jogo baseado numa srie em forma de desenho animado da dcada de 80. H 2 tipos de personagens: os heris e os viles. Queremos fazer um jogo deste tipo.

Haver uma classe para os heris e outra para os viles. Quando houver confronto entre um heri e um vilo, a sorte decidir o vencedor atravs de dados: haver um mtodo chamado "sorte em cada uma dessas duas classes que sortear um valor entre 1 e 6, como um dado faria (para gerar um nmero aleatrio no PHP utilize a funo nativa rand($minimo, $maximo)). Os heris so personagens que tm as seguintes caractersticas marcantes: nome e energia (0 a 10). Os heris e viles podem fazer duas coisas: alimentar-se e lutar. Construa as classes em PHP para implementar o Heri e o Vilo que sigam as especificaes acima e as abaixo: a) os atributos so privativos. b) no construtor, tanto o nome como a energia so carregados por parmetros. c) h um mtodo de acesso para a energia. d) h um mtodo chamado incremento, que aumenta a energia em 1 ponto, mas esta no pode passar do mximo (10). e) h um mtodo chamado decremento que reduz em 1 ponto a energia. Caso este chegue a zero, uma mensagem ser emitida dizendo que o mesmo morreu. f) o mtodo "alimentar aumenta a energia em 2 pontos (use o mtodo incremento do item d).

g) o mtodo "lutar" simula uma batalha entre o Heri e um Vilo da seguinte maneira: o mtodo "lutar"chama o mtodo "sorte" tanto da classe Heri quanto da classe Vilo e compara seus retornos:

se houve empate, tanto o Heri quanto o Vilo sofrem um decremento de energia (use o mtodo decremento do item e). no havendo empate, o vencedor sofre um incremento de energia e o perdedor um decremento (use adequadamente os mtodos incremento e decremento dos itens d e e).

Ao final de cada luta, mostre o estado dos objetos e quem venceu a luta. Caso a energia de algum deles seja zerada, mostre uma mensagem Heri/Vilo Morto!.

Você também pode gostar