Duda con Select Case

Iniciado por Scratz, 15 Diciembre 2007, 20:16 PM

0 Miembros y 1 Visitante están viendo este tema.

Scratz

Holas!

Estaba intentando sacar si un número es par o impar. Muy sencillo: si num mod 2 = 0 es Par, sinó es Impar.

Intento pasar esto a un select case:
       
        a = Val(TextBox1.Text)

        Select Case a

            Case (a Mod 2 = 1)
               
                MsgBox("Impar")
           
            Case Else

                MsgBox("Par")

        End Select

Y esto ya no funciona =( ¿Por qué?

Gracias.
Salu2.
\\... The Revolution Is Comming ...//

cassiani

 Para eso que queres, podes hacer algo tan sencillo como esto:
MsgBox IIf((Val(Text1.Text) Mod 2 = 0), "Par", "Impar")

¡Espero que os sirva! Saludos.  :rolleyes:

Tughack

El mod te da el resto de una division...

se haces esto: a Mod 2 = 1, hay muchos resultados k no tiene resto = 1...

Tienes k hacer Case (a Mod 2 = 0) entonces es par, else es impar...

De kualkier forma puedes simplificarlo....

Salu2

Scratz

Cita de: C@ss¡@n¡ en 15 Diciembre 2007, 21:29 PM
Para eso que queres, podes hacer algo tan sencillo como esto:
MsgBox IIf((Val(Text1.Text) Mod 2 = 0), "Par", "Impar")

¡Espero que os sirva! Saludos.  :rolleyes:

Sirve, pero no para lo que yo quiero ;D


Citarse haces esto: a Mod 2 = 1, hay muchos resultados k no tiene resto = 1...

Cualquier número entero mod 2 devuelve un 1 o un 0.
El código no sirve, sigue haciendo siempre lo del Case Else.


        a = Val(TextBox1.Text)

        Select Case a

            Case (a Mod 2 = 0)

                MsgBox("Par")

            Case Else

                MsgBox("Impar")

        End Select


Gracias a los dos. Por cierto, es VB.net, pero creo recordar que es exactamente igual en VB6.
\\... The Revolution Is Comming ...//

Tughack

Cualquier número entero mod 2 devuelve un 1 o un 0.

Bueno no sabia k solo estavas trabajando con numeros enteros.

De todas formas tu code estaba mal...

Seria asi:

    a = Val(Text1.Text)

    Select Case a Mod 2
    Case 0
        MsgBox ("Par")
    Case Else
        MsgBox ("Impar")
    End Select

vivachapas

#5
yo cuando recien empesaba a programar en uno de mis programas tenia q saber si un numero era par o impar y me mande esto jej miren

CitarIf (-1) ^ (numero) < 0 then
msgbox "Numero impar"
else
msgbox "numero par"
end if

creo q era asi jeje

alto ingenio ;P


modificado: me habia olvidado los parentesis xD

Scratz

Cita de: Tughack en 16 Diciembre 2007, 00:33 AM
Cualquier número entero mod 2 devuelve un 1 o un 0.

Bueno no sabia k solo estavas trabajando con numeros enteros.

De todas formas tu code estaba mal...

Seria asi:

    a = Val(Text1.Text)

    Select Case a Mod 2
    Case 0
        MsgBox ("Par")
    Case Else
        MsgBox ("Impar")
    End Select

Claro, estaba usando mal el Select Case. Gracias! Pero no me sirve para lo q yo quiero, así que tendré q usar If y muchos ElseIf. Gracias a todos.
\\... The Revolution Is Comming ...//