1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

Python

Discussão em 'Programação' iniciada por Luisa91, 8 de Novembro de 2012. (Respostas: 5; Visualizações: 823)

  1. Tenho de implementar uma função, que tendo por argumentos um conjunto A e uma relação binária R, no conjunto A, me devolva o valor lógica destas proposições

    f3(set; set)− > bool tal que f3(A;R) é True se e só se ∀x ∈ A∃!y ∈ A : (x; y) ∈ R

    g2(set)− > bool tal que g2(R) é True se e só se ∀x ∈ A∃y ∈ A∃z ∈ A : (x; y) ∈ R → (y; z) ∈ R

    h1(set; set)− > bool tal que h1(R; S) é True se e só se ∀x ∈ A∀y ∈ A∀z ∈ A : (x; y) ∈ R ∧ (y; z) ∈ S → (y; z) ∈ R

    Alguém me podia explicar como faço isso?
    Ficaria muito agradecida.
     
  2. Sl0w

    Sl0w Power Member

    Vou só sugerir uma resolução para a primeira, a ideia é quase a mesma para as restantes:

    Código:
    def f3(A,R):
       return all(
          t not in R \
             for t in product(A, repeat=2)
       )
    
     
  3. Muito obrigada pela resposta, mas só mais uma pergunta, esse código é Python 2?
     
  4. Sl0w

    Sl0w Power Member

    Hum...acho que o "any" e o "all" só foram introduzidos no python3...Portanto não : P Este código é seguramente python2.

    Código:
    def f3(A,R):
       for x in A:
          for y in A:
               if (x,y) in R:
                    return False
       return True
    
     
  5. Muitíssimo obrigada :)
     
  6. nfk

    nfk Power Member

    O any e o all já existiam antes do python 3. Não sei quando foram introduzidos, mas estão no python 2.6.6 que tenho instalado.
     

Partilhar esta Página