Brincando com conjuntos

Publicado por Santiago Staviski 24/06/2009

[ Hits: 11.560 ]

Homepage: http://allenkonstanz.blogspot.com

Download ex5.py




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;

  



Esconder código-fonte

#!/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")
        
        
    

Scripts recomendados

Validador de CPF

Árvore binária de busca do tipo splay

Fazendo processos rodarem em background

Calculadora de funções do 1º grau

Mudar wallpaper por um aleatorio


  

Comentários
[1] Comentário enviado por allen.konstanz em 25/06/2009 - 09:49h

Pra somar dois conjuntos da pra usar tb:
l = [x+y for x, y in zip(list(conj1),list(conj2))]
e pra multiplicar:
l = [x*y for x, y in zip(list(conj1),list(conj2))]

:P


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts