• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

NuGuN

Curtar nos "IF's"

6 mensagens neste tópico

Bem.. a questão é a seguinte, soponhamos que tenho uma lista de combinações e suas equivalencias(ex: sjkl = #) e desta lista de combinações só me interesão algumas delas(umas 5) e envez de estar a fazer :

If combinação = ... then

  elseif combinação = ... then

        elseif combinação = ... then

...

EndIf

Não tem muito bom aspecto e na minha opinião não é muito funcional.... e a minha ideia era apenas com um IF fazer o que esta acima exmplificado.

Já tentei de varias maneiras e nada, a forma mais lógina que talvez tenha tentado foi a seguinte:

Criei um Enum:

Private Enum EnumTeste

      Comb1 = 1

      Comb2 = 2

      Comb3 = 3

      Comb4 =4

      Comb5 = 5

End Enum

Depois criei um Type:

Private Type TipoTeste

      VarTipo as EnumTeste

End Type

Depois declarei uma variavel para o Type:

Public VarComb as TipoTeste

E depois fiz o seguinte num botão

If VarComb.VarTipo = 2 then

      MsgBox "Sim"

      Else

            Msgbox "Não"

EndIf

Mas apesar do bom aspecto que tudo istu tem nada distu funcionou :mad:

Se alguem me sober dizer como posso fazer algo deste genero agradeço!

cumps

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Não percebi muito bem... mas pelo que percebi, tu tens uma data de comparações (nseique=qualquercoisa) e queres apenas escolher algumas delas..

se for isso, penso que um select case dá... (tambem ainda ando a dar os primeiros passos no vb)

Module Module1
    Dim a As Integer

    Sub Main()
        a = Console.ReadLine

        Select Case a
            Case 2
                Console.WriteLine("Esta quero")
            Case 5
                Console.WriteLine("Esta quero")
            Case 9
                Console.WriteLine("Esta quero")
            Case Else
                Console.WriteLine("Esta não quero")
        End Select

    End Sub

End Module

não sei se isto te ajuda em alguma coisa

cumps.Neocore

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Pois, mas assim continuo a ter envez de varios IF's, varios Case's.

A ideia é apenas com um Case ou com um If, ter as hipoteses todas :D

cumps

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Podes por as combinações num array e depois fazeres:

For i=0 to numeroDePosicoesDoArray

if combinacoes = aoQueQueres then

'codigo aqui

end if

next

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Pois, mas assim continuo a ter envez de varios IF's, varios Case's.

A ideia é apenas com um Case ou com um If, ter as hipoteses todas :D

cumps

A solução do Neocore é a correcta. Tens de tomar várias decisões e neste caso aplica-se o case.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
A solução do Neocore é a correcta. Tens de tomar várias decisões e neste caso aplica-se o case.

Nesse caso utilizo o Case  :D

Obrigado a todos  O0

cumps

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora