
reemplazar SELECT CASE por un ARRAY en VB
Publicado por Luis (2 intervenciones) el 06/05/2011 06:42:13
hola a todos
Junto con saludarlos, me gustaria solicitarles, ayuda, de convertir el siguiente programa, que valida el dia de nacimiento y el mes de nacimiento del usuario y con dicha info, otorno el signo zodiacal, el cual es el siguiente:
Module AdivinaSigno
Sub Main()
Dim dia, mes As Byte
Dim signo As String
ValidarEntrada("ingrese día de nacimiento (1..31): ", dia, 31)
ValidarEntrada("ingrese mes de nacimiento (1..12): ", mes, 12)
If dia >= 20 Then
mes = CType(mes + 1, Byte)
If mes = 13 Then
mes = 1
End If
End If
Select Case mes
Case 1
signo = "CAPRICORNIO"
Case 2
signo = "ACUARIO"
Case 3
signo = "PISCIS"
Case 4
signo = "ARIES"
Case 5
signo = "TAURO"
Case 6
signo = "GEMINIS"
Case 7
signo = "CANCER"
Case 8
signo = "LEO"
Case 9
signo = "VIRGO"
Case 10
signo = "LIBRA"
Case 11
signo = "ESCORPIO"
Case 12
signo = "SAGITARIO"
End Select
Console.WriteLine("Tu signo es: " & signo)
Console.ReadLine()
End Sub
Private Sub ValidarEntrada(ByVal texto As String, ByRef algo As Byte, ByVal limite As Byte)
Dim numerico As Boolean
Do
numerico = True
Console.Write(texto)
Try
algo = CType(Console.ReadLine(), Byte)
Catch ex As InvalidCastException
Console.WriteLine("INGRESE SOLO NUMEROS !!")
numerico = False
Exit Try
Catch ex As Exception When ((algo < 1) Or (algo > limite))
Console.WriteLine("Ingrese números dentro del rango indicado !!")
numerico = False
Exit Try
End Try
Loop Until (numerico = True)
End Sub
End Module
Junto con saludarlos, me gustaria solicitarles, ayuda, de convertir el siguiente programa, que valida el dia de nacimiento y el mes de nacimiento del usuario y con dicha info, otorno el signo zodiacal, el cual es el siguiente:
Module AdivinaSigno
Sub Main()
Dim dia, mes As Byte
Dim signo As String
ValidarEntrada("ingrese día de nacimiento (1..31): ", dia, 31)
ValidarEntrada("ingrese mes de nacimiento (1..12): ", mes, 12)
If dia >= 20 Then
mes = CType(mes + 1, Byte)
If mes = 13 Then
mes = 1
End If
End If
Select Case mes
Case 1
signo = "CAPRICORNIO"
Case 2
signo = "ACUARIO"
Case 3
signo = "PISCIS"
Case 4
signo = "ARIES"
Case 5
signo = "TAURO"
Case 6
signo = "GEMINIS"
Case 7
signo = "CANCER"
Case 8
signo = "LEO"
Case 9
signo = "VIRGO"
Case 10
signo = "LIBRA"
Case 11
signo = "ESCORPIO"
Case 12
signo = "SAGITARIO"
End Select
Console.WriteLine("Tu signo es: " & signo)
Console.ReadLine()
End Sub
Private Sub ValidarEntrada(ByVal texto As String, ByRef algo As Byte, ByVal limite As Byte)
Dim numerico As Boolean
Do
numerico = True
Console.Write(texto)
Try
algo = CType(Console.ReadLine(), Byte)
Catch ex As InvalidCastException
Console.WriteLine("INGRESE SOLO NUMEROS !!")
numerico = False
Exit Try
Catch ex As Exception When ((algo < 1) Or (algo > limite))
Console.WriteLine("Ingrese números dentro del rango indicado !!")
numerico = False
Exit Try
End Try
Loop Until (numerico = True)
End Sub
End Module
Valora esta pregunta


0