Aresta em Código
Sobre a Matemática
Aresta é a linha reta comum a duas faces de um poliedro. São características da aresta: é uma linha reta, une dois vértices, marca o encontro entre duas faces e pertence simultaneamente às duas faces. Em termos simples, a aresta é o “lado” onde uma face toca a outra.
Já o poliedro é um sólido geométrico tridimensional formado exclusivamente por faces planas, que são polígonos. São características de um poliedro: possui três dimensões – comprimento, largura e altura; é composto por faces (superfícies planas), arestas (segmentos de reta) e vértices (pontos de encontro das arestas). E são exemplos de poliedros: cubo, paralelepípedo, pirâmide, prisma e tetraedro.
Sobre o Código
Na linguagem de programação Python,
[] – é o delimitador da lista, a estrutura de dados que armazena vários valores em uma única variável, permitindo alteração, ordem e repetição de elementos.
() – é o delimitador da tupla, a estrutura de dados semelhante à lista, porém imutável, ou seja, seus valores não podem ser alterados após a criação.
set() (conjunto) – é a estrutura de dados que armazena elementos sem repetição e sem ordem fixa, muito usada para garantir valores únicos.
for .. in .. – é a estrutura de repetição que percorre cada elemento de uma sequência (lista, tupla, conjunto ou intervalo).
len – é a função embutida que retorna a quantidade de elementos existentes em uma sequência.
range – é a função embutida que gera uma sequência de números inteiros, geralmente usada para controlar repetições.
[i] (índice) – é a forma de acessar um elemento específico de uma sequência usando sua posição. As sequências são indexadas a partir do zero. Isso significa que o primeiro elemento está na posição 0, e não na posição 1.
% – é o operador módulo, retorna o resto da divisão inteira entre dois números.
sorted – é a função que retorna uma nova sequência ordenada, sem alterar a original.
.add – é o método usado em conjuntos (set) para inserir um novo elemento.
print – é a função embutida que exibe informações ou resultados na tela.
\n – é a sequência de escape que representa uma quebra de linha no texto exibido.
# – é 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…
# Definição das faces de um cubo
# Cada face é representada por uma lista de vértices (pontos no espaço)
faces = [
[(0,0,0), (1,0,0), (1,1,0), (0,1,0)], # Face inferior
[(0,0,1), (1,0,1), (1,1,1), (0,1,1)], # Face superior
[(0,0,0), (1,0,0), (1,0,1), (0,0,1)], # Face frontal
[(0,1,0), (1,1,0), (1,1,1), (0,1,1)], # Face traseira
[(0,0,0), (0,1,0), (0,1,1), (0,0,1)], # Face esquerda
[(1,0,0), (1,1,0), (1,1,1), (1,0,1)] # Face direita
]
arestas = set()
# Percorre cada face
for face in faces:
n = len(face)
for i in range(n):
# Cria uma aresta entre dois vértices consecutivos
aresta = tuple(sorted([face[i], face[(i + 1) % n]]))
arestas.add(aresta)
print("Arestas do poliedro:")
for a in arestas:
print(a)
print("\nTotal de arestas:", len(arestas))| Código Python (.py) | O que faz |
| faces = [ | Cria uma lista chamada faces que irá armazenar todas as faces do poliedro. |
| [(0,0,0), (1,0,0), (1,1,0), (0,1,0)], | Define uma face plana usando quatro pontos (vértices) no espaço tridimensional. |
| (x, y, z) | Cada tupla representa um vértice do poliedro em coordenadas espaciais. |
| ] | Finaliza a lista de faces, representando completamente o poliedro (cubo). |
| arestas = set() | Cria um conjunto vazio para armazenar as arestas sem repetição. |
| for face in faces: | Percorre cada face do poliedro, uma por uma. |
| n = len(face) | Obtém a quantidade de vértices da face (4, pois é um quadrado). |
| for i in range(n): | Percorre cada vértice da face para formar as arestas. |
| face[i] | Representa o vértice atual da face. |
| face[(i + 1) % n] | Representa o próximo vértice, garantindo o fechamento da face. |
| [face[i], face[(i + 1) % n]] | Forma um segmento de reta entre dois vértices consecutivos. |
| sorted(…) | Ordena os vértices para evitar duplicação da mesma aresta. |
| tuple(…) | Converte a aresta para uma tupla, permitindo armazená-la no conjunto. |
| arestas.add(aresta) | Adiciona a aresta ao conjunto de arestas do poliedro. |
| print(“Arestas do poliedro:”) | Exibe um título informativo na tela. |
| for a in arestas: | Percorre todas as arestas encontradas. |
| print(a) | Mostra cada aresta, ou seja, cada linha comum a duas faces. |
| print(“\nTotal de arestas:”, len(arestas)) | Exibe a quantidade total de arestas do poliedro. |
Saída do código (valor de retorno)…
Arestas do poliedro:
((0, 0, 1), (1, 0, 1))
((0, 1, 0), (0, 1, 1))
((0, 1, 0), (1, 1, 0))
((0, 0, 0), (0, 0, 1))
((0, 0, 1), (0, 1, 1))
((1, 0, 1), (1, 1, 1))
((1, 0, 0), (1, 1, 0))
((0, 0, 0), (0, 1, 0))
((0, 0, 0), (1, 0, 0))
((1, 0, 0), (1, 0, 1))
((1, 1, 0), (1, 1, 1))
((0, 1, 1), (1, 1, 1))
Total de arestas: 12
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]