Considere a seguinte classe Retangulo em Java, que representa um retângulo com altura e largura: public class Retangulo { private double altura; private double largura; public Retangulo(double altura, double largura) { this.altura = altura; this.largura = largura; } public double calcularArea() { return altura * largura; } public double calcularPerimetro() { return 2 * (altura + largura); } public void redimensionar(double novaAltura, double novaLargura) { this.altura = novaAltura; this.largura = novaLargura; } } Suponha que você precise criar um objeto Retangulo com altura de 5 e largura de 10, calcular a área e o perímetro, e em seguida redimensionar o retângulo para uma altura de 7 e uma largura de 12. Qual seria a maneira correta de fazer isso?

Questão

Considere a seguinte classe Retangulo em Java, que representa um retângulo com altura e largura:

public class Retangulo { private double altura; private double largura;

public Retangulo(double altura, double largura) {
    this.altura = altura;
    this.largura = largura;
}

public double calcularArea() {
    return altura * largura;
}

public double calcularPerimetro() {
    return 2 * (altura + largura);
}

public void redimensionar(double novaAltura, double novaLargura) {
    this.altura = novaAltura;
    this.largura = novaLargura;
}

}

Suponha que você precise criar um objeto Retangulo com altura de 5 e largura de 10, calcular a área e o perímetro, e em seguida redimensionar o retângulo para uma altura de 7 e uma largura de 12. Qual seria a maneira correta de fazer isso?

Alternativas

a) Retangulo retangulo = new Retangulo(5, 10); retangulo.calcularArea(); retangulo.calcularPerimetro(); retangulo.setDimensoes(12, 7);

b) Retangulo retangulo = new Retangulo(5, 10); double area = Retangulo.calcularArea(); double perimetro = Retangulo.calcularPerimetro(); retangulo.redimensionar(7, 12);

c) Retangulo retangulo = new Retangulo(5, 10); retangulo.calcularArea(); retangulo.calcularPerimetro(); retangulo.redimensionar(12, 7);

d) Retangulo retangulo = new Retangulo(5, 10); double area = retangulo.calcularArea(); double perimetro = retangulo.calcularPerimetro(); retangulo.setDimensoes(7, 12);

e) Retangulo retangulo = new Retangulo(5, 10); double area = retangulo.calcularArea(); double perimetro = retangulo.calcularPerimetro(); retangulo.redimensionar(7, 12);

97%

Explicação

Vamos seguir exatamente o que o enunciado pede, usando os métodos que realmente existem na classe.

  1. Criar o objeto O construtor é Retangulo(double altura, double largura). Então, para altura 5 e largura 10:
  • new Retangulo(5, 10)
  1. Calcular área e perímetro Os métodos calcularArea() e calcularPerimetro() são métodos de instância (não são static). Portanto, devem ser chamados a partir do objeto retangulo, e para “calcular” de forma útil normalmente guardamos o resultado em variáveis:
  • double area = retangulo.calcularArea(); (retorna 510=505\cdot 10 = 50)
  • double perimetro = retangulo.calcularPerimetro(); (retorna 2(5+10)=302\cdot(5+10)=30)
  1. Redimensionar O método disponível para alterar as dimensões é redimensionar(double novaAltura, double novaLargura). O enunciado pede altura 7 e largura 12, nesta ordem:
  • retangulo.redimensionar(7, 12);

Analisando as alternativas:

  • (a) e (d) usam setDimensoes(...), que não existe na classe.
  • (b) chama Retangulo.calcularArea() e Retangulo.calcularPerimetro() como se fossem static, o que está errado.
  • (c) chama redimensionar(12, 7), invertendo altura e largura em relação ao que foi pedido.
  • (e) cria corretamente, calcula e armazena os resultados, e redimensiona para (7, 12).

Alternativa correta: (e).

Questões relacionadas

Ver últimas questões

Comece a estudar de forma inteligente hoje mesmo

Resolva questões de concursos e vestibulares com IA, gere simulados personalizados e domine os conteúdos que mais caem nas provas.

Cancele quando quiser.