Hexágono em Código
Sobre a Matemática
Hexágono é uma palavra de origem grega formada por hexa (seis) e gono (ângulo). É um polígono de seis lados.
O hexágono regular é o hexágono que possui lados iguais e ângulos iguais. Tem como fórmula: 𝑃 = 6⋅𝑙 (perímetro) e A=3√3/2.l2 (área).
O hexágono irregular, por sua vez, possui os lados diferentes. O perímetro é calculado pela soma dos lados. A área é calculada pela fórmula do polígono (Shoelace) a partir de coordenadas.
Sobre o Código
Na linguagem de programação Python,
import – é o comando usado para importar módulos ou bibliotecas, permitindo utilizar funções, classes e constantes externas no código.
def – é a palavra-chave usada para definir uma função, criando um bloco reutilizável de código.
.sqrt() – é o método da biblioteca math usado para calcular a raiz quadrada de um número.
return – é a instrução que encerra a execução da função e devolve um valor ao ponto onde foi chamada.
for – é a estrutura de repetição usada para iterar sobre uma sequência de valores.
range() – é a função que gera uma sequência numérica usada geralmente em laços for.
for..in..: – é a estrutura que percorre elementos de uma sequência (listas, strings, intervalos).
[i] – é o acesso a um elemento de uma lista ou sequência por meio de índice.
% – é o operador módulo, retorna o resto da divisão inteira entre dois números.
+= – é o operador de atribuição com soma, adiciona um valor a uma variável existente. Aumentar o valor de uma variável é chamado de incremento.
print() – é a função usada para exibir informações na tela.
int() – é a função que converte um valor para inteiro.
input() – é a função que recebe dados digitados pelo usuário como texto.
if: – é a estrutura condicional que executa um bloco de código se a condição for verdadeira.
== – é o operador de comparação, verifica se dois valores são iguais.
elif: – é a estrutura condicional usada para testar uma nova condição se o if anterior for falso.
[] – são os delimitadores da estrutura de dados lista, usada para armazenar múltiplos valores ordenados.
f"..." (f-string) – usada para formatar strings permitindo inserir variáveis diretamente no texto.
exit() – é a função que interrompe imediatamente a execução do programa.
# – é usado para criar comentários ao código, que são notas para se entender melhor o que o código faz.
Vamos ao código…
import math
def hexagono_regular(lado):
perimetro = 6 * lado
area = (3 * math.sqrt(3) / 2) * lado ** 2
return perimetro, area| Código Python (.py) | O que faz |
| import math | Importa a biblioteca math, que fornece funções matemáticas como raiz quadrada. |
| def hexagono_regular(lado): | Define uma função para calcular propriedades do hexágono regular, recebendo o comprimento do lado. |
| perimetro = 6 * lado | Calcula o perímetro do hexágono regular somando seus 6 lados iguais. |
| area = (3 * math.sqrt(3) / 2) * lado ** 2 | Calcula a área do hexágono regular usando a fórmula matemática específica. |
| return perimetro, area | Retorna o perímetro e a área calculados. |
def hexagono_irregular(vertices):
perimetro = 0
area = 0
for i in range(6):
x1, y1 = vertices[i]
x2, y2 = vertices[(i + 1) % 6]
perimetro += math.sqrt((x2 - x1) ** 2 + (y2 - y1) ** 2)
area += (x1 * y2) - (x2 * y1)
area = abs(area) / 2
return perimetro, area| Código Python (.py) | O que faz |
| def hexagono_irregular(vertices): | Define uma função para calcular perímetro e área de um hexágono irregular a partir dos vértices. |
| perimetro = 0 | Inicializa o valor do perímetro. |
| area = 0 | Inicializa o valor da área. |
| for i in range(6): | Cria um laço que percorre os 6 vértices do hexágono. |
| x1, y1 = vertices[i] | Obtém as coordenadas do vértice atual. |
| x2, y2 = vertices[(i + 1) % 6] | Obtém o próximo vértice, usando módulo para fechar o polígono. |
| perimetro += math.sqrt((x2 – x1) ** 2 + (y2 – y1) ** 2) | Calcula a distância entre dois vértices consecutivos e soma ao perímetro. |
| area += (x1 * y2) – (x2 * y1) | Aplica parte da fórmula do polígono (Shoelace) para cálculo da área. |
| area = abs(area) / 2 | Finaliza o cálculo da área do hexágono irregular. |
| return perimetro, area | Retorna o perímetro e a área calculados. |
print("1 - Hexágono Regular")
print("2 - Hexágono Irregular")
opcao = int(input("Escolha o tipo de hexágono: "))
if opcao == 1:
lado = float(input("Informe o valor do lado: "))
perimetro, area = hexagono_regular(lado)
elif opcao == 2:
vertices = []
print("Informe as coordenadas (x, y) dos 6 vértices:")
for i in range(6):
x = float(input(f"x{i+1}: "))
y = float(input(f"y{i+1}: "))
vertices.append((x, y))
perimetro, area = hexagono_irregular(vertices)
else:
print("Opção inválida!")
exit()
print(f"Perímetro: {perimetro:.2f}")
print(f"Área: {area:.2f}")| Código Python (.py) | O que faz |
| print(“1 – Hexágono Regular”) | Exibe a opção de cálculo para hexágono regular. |
| print(“2 – Hexágono Irregular”) | Exibe a opção de cálculo para hexágono irregular. |
| opcao = int(input(“Escolha o tipo de hexágono: “)) | Lê a escolha do usuário e converte para inteiro. |
| if opcao == 1: | Verifica se o usuário escolheu hexágono regular. |
| lado = float(input(“Informe o valor do lado: “)) | Lê o valor do lado do hexágono regular. |
| perimetro, area = hexagono_regular(lado) | Chama a função do hexágono regular. |
| elif opcao == 2: | Verifica se o usuário escolheu hexágono irregular. |
| vertices = [] | Cria uma lista vazia para armazenar os vértices. |
| for i in range(6): | Laço para receber as coordenadas dos 6 vértices. |
| x = float(input(f”x{i+1}: “)) | Lê a coordenada x do vértice. |
| y = float(input(f”y{i+1}: “)) | Lê a coordenada y do vértice. |
| vertices.append((x, y)) | Armazena o vértice como uma tupla dentro da lista. |
| perimetro, area = hexagono_irregular(vertices) | Chama a função do hexágono irregular. |
| else: | Trata uma opção inválida. |
| print(“Opção inválida!”) | Exibe mensagem de erro. |
| exit() | Encerra o programa. |
| print(f”Perímetro: {perimetro:.2f}”) | Exibe o perímetro formatado com duas casas decimais. |
| print(f”Área: {area:.2f}”) | Exibe a área formatada com duas casas decimais. |
Saída do código (valor de retorno)…
1 - Hexágono Regular
2 - Hexágono Irregular
Perímetro: 24.00
Área: 41.57
Fonte:
- Editora Didática Paulista. Ensino Didático 2000: Ensino Fundamental e Ensino Médio. Sorocaba: Editora Didática Paulista, [s.d.].
- Códigos e comentários gerados por ChatGPT com revisão nossa.
- https://docs.python.org/pt-br/3/ [Documentação Oficial do Python]