No sé si el título está bien formulado , pero allá va mi cuestión.
Actualmente ando con los condicionales de vb.net , y tras empollarme la lección , me puse a intentar crear un código que , al introducir un número en un textbox te dijera si era mayor , menor , o igual que el número pi(Una tontería , pero algo tenía que hacer para practicar)
Total que me puse a ello y busqué mas información con respecto a los condicionales.
Observé en diversos sitios que añadían el else , y la última condición se "auto-completaba" por decirlo así.
Os pondré un ejemplo , este es el código que hice , se basa en un textbox y un button que al ser pinchado te dice si es mayor , igual o menor ;
Código
Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim mensaje1 As String Dim mensaje2 As String If txt1.Text < 3.14 Then mensaje1 = "Es menor que pi" MsgBox(mensaje1) ElseIf txt1.Text = 3.14 Then mensaje2 = "Es igual que pi" MsgBox(mensaje2) Else MsgBox(" Es mayor que pi") End If End Sub
(También me di cuenta de que podía acortar bastante el código , como por ejemplo no declarar los mensajes que te tira al comprobar como string ya que directamente puedes ponerlo como msgbox en la condición)
Ahora viene mi duda , veréis que tanto para el if como para el elseif establezco por así decirlo la condición , tanto = 3.14 como < 3.14 , pero al poner el else , directamente interpreta que es mayor , y así lo comprobé al ejecutarlo , que directamente si ponías un número mayor te tiraba el mensaje de que era mayor , sin necesidad de establecer el >3.14
Mi pregunta es , ¿Esto por qué sucede así?¿Siempre es similar?¿Sirve para Strings y demás?Porque no acabo de entender su funcionamiento , busqué un par de ejemplos , e incluso en la página oficial de microsoft pero no sirvió demasiado para despejarme la duda.
Un saludo y muchas gracias , a pesar de que mis dudas sean tan imperdonables xD