MAPA – ADSIS – PROGRAMAÇÃO III – 51_2025
Caro estudante!
Temos por certo que os desafios sempre contribuem na aquisição de conhecimentos e competências desejadas. Sendo assim, faz-se necessário relacionar o que se aprende com situações reais que podem ser encontradas no cotidiano.
Nesta atividade, você é convidado a realizar uma atividade para verificar como a disciplina em questão pode contribuir na sua experiência e formação profissional. Por este motivo, nesta atividade MAPA, você é instigado a solucionar um problema voltado para sua área de formação.
—————————————————————————————————————–
Uma imobiliária precisa de um sistema para gerenciar as locações de imóveis, uma software house realizou a análise e a implementação inicial do sistema que foi desenvolvido em Java utilizando os paradigmas da orientação à objetos.
O modelo desenhado para solução foi:
Já a implementação do código baseado no modelo foram as seguintes classes:
Principal.java
public class Principal {
public static void main(String[] args) {
Aluguel aluguel = new Aluguel();
//aluguel.locarImovel();
System.out.println(aluguel.validarLocacao(2500, 10000));
}
}
Imovel.java
public class Imovel {
private int id;
private String descricao;
private double metragem;
private double valorAluguel;
public void cadastrarImovel(){
this.id = Integer.parseInt(JOptionPane.showInputDialog(“Digite o código do imóvel”));
this.descricao = JOptionPane.showInputDialog(“Digite a descrição do imóvel”);
this.metragem = Double.parseDouble(JOptionPane.showInputDialog(“Digite a metragem do imóvel”));
this.valorAluguel = Double.parseDouble(JOptionPane.showInputDialog(“Digite o valor do aluguel do imóvel”));
}
public String imprimirResumoImovel(){
String msg = “Id: ” + this.id + “\n” + “Descrição: ” + this.descricao + “\n”;
msg = “Metragem: ” + this.metragem + “\n” + “Valor Aluguel: ” + this.valorAluguel;
return msg;
}
public void atualizarValorAnual(double percentualAjuste){
this.valorAluguel = valorAluguel * (percentualAjuste/100);
}
public double getValorAluguel(){
return this.valorAluguel;
}
}
Locatario.java
public class Locatario {
private int id;
private String nome;
private int idade;
private double salario;
public void cadastrarLocatario(){
this.id = Integer.parseInt(JOptionPane.showInputDialog(“Digite o código do locatário”));
this.nome = JOptionPane.showInputDialog(“Digite o nome do locatário”);
this.idade = Integer.parseInt(JOptionPane.showInputDialog(“Digite a idade do locatário”));
this.salario = Double.parseDouble(JOptionPane.showInputDialog(“Digite o salário do locatário”));
}
public String imprimirResumoLocatario(){
String msg = “Id: ” + this.id + “\n”;
msg += “Nome: ” + this.nome + “\n”;
msg += “Idade: ” + this.idade + “\n”;
msg += “Salário: ” + this.salario;
return msg;
}
public double getSalario(){
return this.salario;
}
}
Aluguel.java
public class Aluguel {
private Imovel imovel;
private Locatario locatario;
public void locarImovel(){
this.imovel = new Imovel();
imovel.cadastrarImovel();
this.locatario = new Locatario();
locatario.cadastrarLocatario();
if(validarLocacao(this.imovel.getValorAluguel(), this.locatario.getSalario())){
JOptionPane.showMessageDialog(null, “Locação efetuada!”);
}else{
JOptionPane.showMessageDialog(null, “Locação NÃO efetuada!”);
}
}
public boolean validarLocacao(double valorAluguel, double salario){
boolean resultado = false;
double valorReferencia = salario * (1 + 0.3);
resultado = valorAluguel <= valorReferencia;
return resultado;
}
}
Você foi designado para tocar em frente este projeto e precisa agora resolver as seguintes pendências.
1 – A classe Aluguel.java possui um método validarLocacão que recebe por parâmetro o valor do aluguel e o salário, precisa validar se o valor do aluguel é igual ou menor a 30% do salário do locatário. Caso seja menor ou igual que 30% do salário do locatário, o método deve retornar VERDADEIRO (true), caso contrário FALSO (false). O código está retornando um valor errado na verificação. Qual ajuste necessário para retornar o valor correto?
2 – Uma nova regra que precisa ser implementada, é deixar cadastrar apenas locatários com 18 anos ou mais. Sabendo isso, responda qual classe deve implementar esse método, e qual método já existente deverá chama este novo método para aplicar a regra?
3 – O método imprimirResumoImovel está apresentando um bug quando chamado: apenas os dados de metragem e valor do aluguel estão sendo retornados. Identifique e descreva o que está ocasionando este erro e qual solução deve ser feita para resolver.
4 – O método atualizarValorAnual está com um bug também: ao executar o ajuste anual, o valor do aluguel está ficando apenas com valor do ajuste, perdendo o valor real do aluguel. Que modificação deve ser realizada para resolver o problema?
ORIENTAÇÕES IMPORTANTES:
– Realize pesquisas complementares sobre os assuntos requisitados para esta atividade.
– Mais importante que o número de linhas é a qualidade da sua resposta, portanto certifique-se de que está atendendo exatamente e por completo ao que está sendo solicitado no comando de cada etapa.
- Acesse o link com um vídeo tutorial para ajudá-lo nesse processo de criação e desenvolvimento. O acesso deverá ser realizado em: Arquivos >> Material da Disciplina ou no respectivo fórum.
- Disserte a respeito do tema, seguindo como roteiro os tópicos elencados anteriormente.
- A entrega deve ser feita exclusivamente por meio do Template de entrega da atividade MAPA, disponível no material da disciplina.
- Antes de enviar sua atividade, certifique-se de que respondeu a todas as perguntas e realize uma cuidadosa correção ortográfica.
- Após o envio não são permitidas alterações, ou modificações. Logo, você tem apenas uma chance de enviar o arquivo corretamente. Revise bem antes de enviar!
- Lembre-se que evidências de cópias de materiais, incluindo de outros acadêmicos, sem devidas referências, serão inquestionavelmente zeradas. As citações e referências, mesmo que do livro da disciplina, devem ser realizadas conforme normas da Instituição de Ensino.
- Não são permitidas correções parciais no decorrer do módulo, ou seja, o famoso: “professor, veja se minha atividade está certa?”. Isso invalida seu processo avaliativo. Lembre-se que a interpretação da atividade também faz parte da avaliação.
- Procure sanar suas dúvidas junto à mediação em tempo hábil sobre o conteúdo exigido na atividade, de modo que consiga realizar sua participação.
- Atenção ao prazo de entrega, evite envio de atividade em cima do prazo. Você pode ter algum problema com internet, computador, software etc., e os prazos não serão flexibilizados, mesmo em caso de comprovação.
Bons estudos!
Em caso de dúvidas, encaminhar mensagem ao seu Professor Mediador.