Conjuntos em Código
Sobre a Matemática
Apesar de não se poder definir o conjunto, entederemos que ele seja um ente primitivo, isto é, uma coleção ou uma lista bem definida de objetos, símbolos, etc., como vemos a seguir:
1) A: conjunto das letras do alfabeto ou A = {a,b,c,d…x,y,z}
2) B: conjunto dos alunos da minha equipe. Suponhamos que seja: B = {Alcides, Bruno, Denise, Eliseu, Diva} ou B = {a,b,c,d}; a,b,c,d são elementos de B.
O fato de de c ou d pertencerem a B se indica: C ∈ B ou d ∈ B.
A negação desse fato; ou seja, m ou n não pertencerem a B se indica: m ∉ B ou n ∉ B.
Assim, pois, dentro de um conjunto estão constituídos os elementos, que, como vimos, podem ser denotados tanto por letras latinas minúsculas, como por nomes, objetos ou qualquer outro tipo de símbolo que existir.
Sobre o Código
Na linguagem de programação Python,
from – é a palavra-chave usada para importar módulos ou funções específicas de uma biblioteca. Biblioteca, por sua vez, é um conjunto de códigos prontos que oferecem funções e ferramentas para resolver problemas específicos, sem precisar programar tudo do zero.
sympy – é a biblioteca voltada para matemática simbólica (álgebra, cálculo, conjuntos, etc.).
import – é a palavra-chave usada para trazer módulos, classes ou funções externas para o código.
FiniteSet() – é a classe da biblioteca SymPy que representa conjuntos finitos de elementos.
Symbol() – é a função da SymPy que cria símbolos matemáticos (como variáveis algébricas).
print() – é a função nativa que exibe informações na tela (saída padrão).
.union() – é o método que retorna a união de dois conjuntos (todos os elementos de ambos).
.intersect() – é o método que retorna a interseção de dois conjuntos (elementos comuns).
bool() – é a função nativa que converte um valor em True ou False.
.contains() – é o método da SymPy que verifica se um elemento pertence a um conjunto.
set() – é o tipo nativo que cria conjuntos (coleções sem elementos repetidos).
in – é o operador usado para verificar se um elemento pertence a uma coleção (listas, conjuntos, strings, etc.).
# – é 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…
from sympy import FiniteSet, Symbol
# Definindo símbolos
a, b, c, d, e = Symbol("a"), Symbol("b"), Symbol("c"), Symbol("d"), Symbol("e")
# Criando conjuntos simbólicos
A = FiniteSet(a, b, c, d)
B = FiniteSet(c, d, e)
# Operações simbólicas
print("União:", A.union(B))
print("Interseção:", A.intersect(B))
print("Diferença A - B:", A - B)
# Pertinência
print("c pertence a A?", bool(A.contains(c)))
print("e pertence a A?", bool(A.contains(e)))| Código Python (.py) | O que faz |
| from sympy import FiniteSet, Symbol | Importa FiniteSet (para conjuntos finitos) e Symbol (para criar símbolos matemáticos). |
| a, b, c, d, e = Symbol(“a”), Symbol(“b”), Symbol(“c”), Symbol(“d”), Symbol(“e”) | Cria símbolos matemáticos a, b, c, d, e. |
| A = FiniteSet(a, b, c, d) | Define o conjunto A com os símbolos a, b, c, d. |
| B = FiniteSet(c, d, e) | Define o conjunto B com os símbolos c, d, e. |
| print(“União:”, A.union(B)) | Calcula e imprime a união dos conjuntos A e B. |
| print(“Interseção:”, A.intersect(B)) | Calcula e imprime a interseção entre A e B. |
| print(“Diferença A – B:”, A – B) | Calcula e imprime a diferença entre A e B (elementos de A que não estão em B). |
| print(“c pertence a A?”, bool(A.contains(c))) | Verifica se o símbolo c pertence a A, convertendo o resultado para True/False. |
| print(“e pertence a A?”, bool(A.contains(e))) | Verifica se o símbolo e pertence a A, convertendo o resultado para True/False. |
Saída do código (valor de retorno)…
União: {a, b, c, d, e}
Interseção: Intersection({c, d, e}, {a, b, c, d})
Diferença A - B: Complement({a, b}, {e})
c pertence a A? True
e pertence a A? True
# Exemplo básico usando conjuntos nativos do Python
# Conjunto das letras do alfabeto
A = set("abcdefghijklmnopqrstuvwxyz")
# Conjunto dos alunos da equipe
B = {"Alcides", "Bruno", "Denise", "Eliseu", "Diva"}
# Verificando pertinência
print("c pertence a A?", "c" in A)
print("Bruno pertence a B?", "Bruno" in B)
print("m pertence a B?", "m" in B)
# Operações de conjuntos
vogais = {"a", "e", "i", "o", "u"}
print("Interseção entre A e vogais:", A & vogais)
print("União entre B e {'Carlos'}:", B | {"Carlos"})
print("Diferença entre B e {'Denise'}:", B - {"Denise"})| Código Python (.py) | O que faz |
| A = set(“abcdefghijklmnopqrstuvwxyz”) | Cria um conjunto A com todas as letras do alfabeto em minúsculo. |
| B = {“Alcides”, “Bruno”, “Denise”, “Eliseu”, “Diva”} | Define o conjunto B com os nomes dos alunos da equipe. |
| print(“c pertence a A?”, “c” in A) | Verifica se a letra “c” está dentro do conjunto A. |
| print(“Bruno pertence a B?”, “Bruno” in B) | Verifica se o nome “Bruno” está dentro do conjunto B. |
| print(“m pertence a B?”, “m” in B) | Verifica se “m” está dentro de B (vai retornar False). |
| vogais = {“a”, “e”, “i”, “o”, “u”} | Cria um conjunto com as vogais. |
| print(“Interseção entre A e vogais:”, A & vogais) | Mostra a interseção entre A e vogais (elementos comuns). |
| print(“União entre B e {‘Carlos’}:”, B | {“Carlos”}) | Mostra a união entre B e o conjunto {Carlos}. |
| print(“Diferença entre B e {‘Denise’}:”, B – {“Denise”}) | Mostra os elementos de B excluindo “Denise”. |
Saída do código (valor de retorno)…
c pertence a A? True
Bruno pertence a B? True
m pertence a B? False
Interseção entre A e vogais: {'i', 'a', 'u', 'o', 'e'}
União entre B e {'Carlos'}: {'Alcides', 'Carlos', 'Diva', 'Bruno', 'Denise', 'Eliseu'}
Diferença entre B e {'Denise'}: {'Bruno', 'Alcides', 'Eliseu', 'Diva'}
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 Microsoft Copilot com revisão nossa.
– https://docs.python.org/pt-br/3/ [Documentação Oficial do Python]