Brincando com conjuntos
Publicado por Santiago Staviski 24/06/2009
[ Hits: 11.738 ]
Homepage: http://allenkonstanz.blogspot.com
Fiz esse programinha que faz operações com conjuntos de 5 elementos cada, fornecidos pelo usuário: união, diferença, soma dos elementos, multiplicação dos elementos e interseção;
#!/usr/bin/env python3 # -*- coding: utf-8 -*- #Autor: Allen Konstanz http://allenkonstanz.blogspot.com loop = 1 choice = 0 conj1 = set() conj2 = set() def menu(a): print("1. Fornecer 2 conjuntos de números ao programa, cada um com 5 elementos") print("2. União dos conjuntos") print("3. Diferença dos conjuntos") print("4. Soma dos conjuntos") print("5. Multiplicação dos conjuntos") print("6. Interseção dos conjuntos") print("7. Visualizar os dois conjuntos") print("8. Limpar todos os elementos dos conjuntos") print("9. Sair do programa") print() while 1: try: opcao = int(input("Escolha a opcao desejada: ")) break except: print("Verifique se digitou alguma letra por engano ou ',' ao invés de '.'") while not 1 <= opcao <= 9: print() opcao = int(input("Escolha a opção 1 à 9: ")) else: return opcao #O Programa realmente começa aqui: print("Bem Vindo ao Programa Operações com conjuntos! (Digite apenas números e lembrando quem o conjunto não aceita elementos repetidos)") while loop: choice = menu(1) if choice == 1: while 1: try: for cont in range(5): #Pede 5 números ao usuário conj1.add(int(input("Número do conjunto 1: "))) #coloca os números no conjunto 'conj1' conj2.add(int(input("Número do conjunto 2: "))) #coloca os números no conjunto 'conj2' break except: print("Verifique se digitou alguma letra por engano ou ',' ao invés de '.'") print("Começe denovo os conjuntos:") print() elif choice == 2: if len(conj1) == 0: print() print("Execulte primeiro a opção 1 [Fornecer os elementos aos conjuntos]!") print() else: print() print("A União entre os dois conjuntos é: ", conj1.union(conj2)) print() elif choice == 3: if len(conj1) == 0: print() print("Execulte primeiro a opção 1 [Fornecer os elementos aos conjuntos]!") print() else: print() print("A Diferença entre os dois conjuntos é: ", conj1.difference(conj2)) print() elif choice == 4: if len(conj1) == 0: print() print("Execulte primeiro a opção 1 [Fornecer os elementos aos conjuntos]!") print() else: print() print("A Soma entre os elementos dos conjuntos é: ", (list(conj1)[0]+list(conj2)[0],list(conj1)[1]+list(conj2)[1],list(conj1)[2]+list(conj2)[2],list(conj1)[3]+list(conj2)[3],list(conj1)[4]+list(conj2)[4])) print() elif choice == 5: if len(conj1) == 0: print() print("Execulte primeiro a opção 1 [Fornecer os elementos aos conjuntos]!") print() else: print() print("A Multiplicação entre os elementos dos conjuntos é: ", (list(conj1)[0]*list(conj2)[0],list(conj1)[1]*list(conj2)[1],list(conj1)[2]*list(conj2)[2],list(conj1)[3]*list(conj2)[3],list(conj1)[4]*list(conj2)[4])) print() elif choice == 6: if len(conj1) == 0: print() print("Execulte primeiro a opção 1 [Fornecer os elementos aos conjuntos]!") print() else: print() print("A Interseção entre os dois conjuntos é: ", conj1.intersection(conj2)) print() elif choice == 7: if len(conj1) == 0: print() print("Execulte primeiro a opção 1 [Fornecer os elementos aos conjuntos]!") print() else: print() print("Conjunto 1: ",conj1,"Conjunto 2: ",conj2) print() elif choice == 8: if len(conj1) == 0: print() print("Execulte primeiro a opção 1 [Fornecer os elementos aos conjuntos]!") print() else: conj1.clear() conj2.clear() print() print("Conjuntos vazios") print() else: loop = 0 print() print("Obrigado por usar o programa")
Simples script para atrasar/adiantar legendas
Algoritmo de Dijkstra em Python com visualização em PyGraphviz
O que é o THP na configuração de RAM do Linux e quando desabilitá-lo
Comparação entre os escalonadores BFQ e MQ-Deadline (acesso a disco) no Arch e Debian
Conciliando o uso da ZRAM e SWAP em disco na sua máquina
Servidor de Backup com Ubuntu Server 24.04 LTS, RAID e Duplicati (Dell PowerEdge T420)
Como unir duas coleções de ROMs preservando as versões traduzidas (sem duplicatas)
Como instalar o Telegram Desktop no Ubuntu 24.04
Overclocking Permanente para Drastic no Miyoo Mini Plus
Problemas de chaves (/usr/share/keyrings) no Debian
Converter os repositórios Debian para o novo formato com as chaves