program Conjuntos
	implicit none 
    integer  i, conj(50), tam_conj, elemento, cont
    logical  pertence

    ! Determina o tamanho do conjunto a ser lido
    write (*, *) "Qual o tamanho do Conjunto a ser lido (maximo 50)?"
    read  (*,*) tam_conj    
    
    ! Lê os Conjunto
    write(*, *)
    write (*, *) "Informe os elementos do Conjunto"
    read  (*,*) (conj(i), i = 1, tam_conj, 1)
    
    ! Imprime o Conjunto Lido
    write(*, *)
    write(*, *) "Conjunto Lido"
    write(*,*) (conj(i), i = 1, tam_conj, 1)
    
    !Procura 3 elementos no conjunto lido
    do cont = 1, 3, 1
        ! Le o elemento a ser procurado
        write (*, *)
        write (*, *) "Informe o elemento que deseja procurar no Conjunto" 
        read  (*,*) elemento
    
        ! Verifica se elemento pertence ao conjunto
        pertence = .false.
        do i = 1, tam_conj, 1
          if(elemento == conj(i)) then
            pertence = .true.
          end if
        end do
        
        !imprime resultado
        if(pertence) then
          write(*, *) "O elemento pertence ao conjunto"
        else
          write(*, *) "O elemento nao pertence ao conjunto"  
        end if
    end do
                 
    stop
end program Conjuntos


