Para cada exercício proposto, faça um projeto em Java correspondente ao sistema solicitado. Lembre-se de utilizar encapsulamento para a construção das classes conceituais do sistema.
Para realizar alguns dos exercícios propostos, pode ser necessário utilizar coleções Java como: Listas, HashMaps ou vetores.
Mario é um encanador que no seu tempo livre tem como hobby estudar diferentes as diferentes características e habilidades dos tipos de cogumelos que encontra no mundo. Ele gostaria de ter um sistema para facilitar a organização das informações sobre os cogumelos que coleta e simular os efeitos de uso dos cogumelos em agentes de teste. Agentes de teste são iniciados sempre com vitalidade máxima de 100 e não possuem habilidades especiais. Elabore um sistema de simulação para Mario que organize os diferentes cogumelos usando o conceito de Herança de acordo com a estrutura descrita a seguir.
1. Cogumelo comum
Características: tamanho médio, vermelho com pontos brancos
Habilidades: aumenta o tamanho de quem o consome em 50%
2. Cogumelo 1-Up
Características: tamanho médio, verde com um símbolo "1-UP" branco
Habilidades: restaura a vitalidade de quem o consome em 100%
3. Cogumelo Venenoso
Características: tamanho médio, roxo escuro com pontos amarelos
Habilidades: diminui a vitalidade de quem o consome em 50%
4. Super Cogumelo
Características: tamanho grande, vermelho com pontos brancos
Habilidades: aumenta o tamanho de quem o consome em 100%
5. Mega Cogumelo
Características: tamanho grande, amarelo com pontos vermelhos
Habilidades: aumenta o tamanho de quem o consome em 1000%
6. Mini Cogumelo
Características: tamanho pequeno, azul com pontos brancos
Habilidades: diminui o tamanho de quem o consome em 50%
7. Cogumelo Hélice
Características: tamanho médio, laranja com pontos amarelos e uma hélice na cabeça
Habilidades: oferece o poder de voar para quem o consome
ATRIBUTOS MÍNIMOS
Nome
Tamanho
Aparência
Quantidade
MÉTODOS MÍNIMOS
Usar cogumelo (Agente)
getters e setters
ATRIBUTOS MÍNIMOS
Nome
Altura
Vitalidade
Pode Voar
MÉTODOS MÍNIMOS
Agente (Nome, Altura)
getters e setters
ATRIBUTOS MÍNIMOS
Ligado
MÉTODOS MÍNIMOS
Testar Cogumelo (Cogumelo, Agente)
getters e setters
Cadastrar cogumelos
Cadastrar agentes para testes
Criar e ligar simulador
Testar uso de cogumelos em agentes
Desligar simulador
Em um jogo existem monstros e personagens humanoides. Jogadores(as) controlam personagens humanoides que podem encontrar com monstros enquanto exploram o jogo. Cada jogador(a) possui uma agenda que apresenta informações sobre os monstros a cada encontro do(a) jogador(a) com um monstro, contabilizando os encontros do(a) jogador(a) em uma coleção. No primeiro encontro de um(a) jogador(a) com um novo monstro, a agenda adiciona este monstro à coleção de monstros encontrados pelo(a) jogador(a). Elabore um sistema que simule este jogo com todos os seus componentes funcionando de acordo com a estrutura descrita a seguir.
ATRIBUTOS MÍNIMOS
Nome monstro
Número do monstro
Descrição
MÉTODOS MÍNIMOS
Monstro (Nome, Número, Descrição)
getters e setters
ATRIBUTOS MÍNIMOS
Nome jogador
MÉTODOS MÍNIMOS
Jogador (Nome)
getters e setters
ATRIBUTOS MÍNIMOS
Jogador
Coleção [Monstro, Número de Encontros]
MÉTODOS MÍNIMOS
Agenda (Jogador)
Registrar encontro (Monstro)
getters e setters
Cadastrar monstros
Cadastrar jogador
Criar agenda de jogador
Registrar encontros de jogador com monstro
Exibir coleção de encontros da agenda de jogador
Alvo é diretor de uma Escola de Magia que contabiliza pontos de comportamentos de estudantes para premiação ao final do ano letivo e deseja um sistema que o ajude a gerenciar esta questão. Os(as) estudantes da Escola de Magia são divididos em 4 Casas representadas por cores: Azul, Amarela, Vermelha e Verde. Um bom comportamento de um estudante resulta em uma pontuação positiva para a sua casa , enquanto um mau comportamento resulta em uma pontuação negativa para a casa a qual pertence. Ao final do ano letivo, a Casa com maior pontuação positiva ganha um troféu em uma cerimônia. Elabore um sistema para ajudar Alvo na gestão da Escola de Magia de acordo com a estrutura descrita a seguir.
ATRIBUTOS MÍNIMOS
Nome estudante
Número de matrícula
Nome da casa do(a) estudante
MÉTODOS MÍNIMOS
Estudante (Nome, Matrícula)
getters e setters
ATRIBUTOS MÍNIMOS
Nome da casa
Estudantes da casa
Pontuação da casa
MÉTODOS MÍNIMOS
Casa (Nome)
Atribuir estudante (Estudante)
getters e setters
ATRIBUTOS MÍNIMOS
Nome comportamento
Pontuação
MÉTODOS MÍNIMOS
Comportamento (Nome, Pontuação)
getters e setters
ATRIBUTOS MÍNIMOS
Ano
Casa vencedora
MÉTODOS MÍNIMOS
Ano Letivo (Ano)
Iniciar ano letivo
Registrar comportamento (Estudante, Comportamento)
Encerrar ano letivo
getters e setters
Cadastrar ano letivo
Cadastrar casas
Cadastrar comportamentos
Cadastrar estudantes
Atribuir estudantes às casas
Iniciar ano letivo
Registrar comportamentos de estudantes
Encerrar ano letivo
Apresentar total de pontos de cada casa
Exibir um ranking das casas baseado na maior pontuação
Exibir e registrar a casa vencedora com a maior pontuação no ano
Exibir todos os estudantes que fazem parte da casa vencedora
Diante de um apocalipse zumbi, a ONU juntamente com a OMS precisa de um sistema para controlar as quantidades populacionais de pessoas saudáveis, pessoas acometidas pelo vírus zumbi e óbitos em todo mundo por boletins. O sistema deve apresentar relatórios por regiões como Cidades, Estados e Países. Entretanto, boletins só podem ser registrados para regiões base, isto é, que não possuem subregiões. Elabore um protótipo desse sistema de acordo com a estrutura descrita a seguir.
ATRIBUTOS MÍNIMOS
Nome região
Tipo da região
Subregiões
População total original
População saudável
População zumbi
Óbitos
MÉTODOS MÍNIMOS
Região (Nome, Tipo, População Total Original)
Cadastrar subregião (Região)
Emitir relatório
getters e setters
ATRIBUTOS MÍNIMOS
Data - dica: tipo Date
MÉTODOS MÍNIMOS
Boletim (Data)
Registrar boletim (Região, Novos casos zumbi, Novos óbitos)
getters e setters
Cadastrar regiões
Cadastrar subregiões
Criar e registrar boletins para as regiões
Emitir relatórios populacionais para as regiões
Barbieland é um mundo perfeito habitado por bonecas que vivem em harmonia. As bonecas de Barbieland usam looks combinados perfeitamente de acordo com a sua profissão e o local em que o look será utilizado. Para montarem o look perfeito, as bonecas precisam de um sistema que as ajude a dizer se um look combina ou não com elas e com o local onde irão. Elabore um sistema de guarda-roupas virtual que ajude as bonecas de acordo com a estrutura descrita a seguir.
ATRIBUTOS MÍNIMOS
Nome do item
Tipo do item: parte de cima, parte de baixo, peça única (usada como item superior e inferior ao mesmo tempo), sapato ou acessório.
Profissões indicadas
Locais indicados
MÉTODOS MÍNIMOS
getters e setters
ATRIBUTOS MÍNIMOS
Item superior
Item inferior
Sapato
Acessórios
MÉTODOS MÍNIMOS
getters e setters
ATRIBUTOS MÍNIMOS
Nome da boneca
Profissão da Boneca
MÉTODOS MÍNIMOS
Avaliar look (Look, local)
getters e setters
Cadastrar itens de guarda-roupas
Cadastrar bonecas
Criar look
Avaliar combinação do look