Desenvolva uma classe chamada Hexadecagon
para representar um hexadecágono, ou seja, um polígono regular com dezesseis lados de mesmo comprimento. A classe possui um único atributo denominado side
, do tipo double
, que representa o lado do hexadecágono e cujo valor deve ser maior ou igual a zero e menor ou igual a vinte. A classe possui dois construtores: o primeiro configura o lado do hexadecágono com o valor padrão 1.0
, e o segundo recebe como parâmetro o lado do hexadecágono. O lado do hexadecágono pode ser obtido e alterado pelo usuário por meio dos métodos getSide()
e setSide()
, respectivamente. A classe também apresenta os métodos area()
e perimeter()
, que retornam a área e o perímetro do hexadecágono, respectivamente. A área de um hexadecágono de lado l é obtida pela fórmula 4 * (1 + √2 + √(2 * (2 + √2))) * l2. O perímetro de um hexadecágono de lado l é obtido pela fórmula 16 * l.