¿Qué es una sentencia condicional IF?

publicado en: BlitzMax, Programación | 2

En resumen, La sentencia condicional IF permite que el programa evalué los diferentes tipos de datos. Al hacerlo se puede hacer algo en concreto dependiendo el resultado de es análisis.

La estructura de estas sentencias condicionales se caracteriza por tener como clausula de apertura un IF (Si )y su clausula de cierre un End IF ( Fin del si ). Y Opcionalmente se puede usar la palabra reservada Then. ( Entonces ).

Local nombreUsuario:String = Input("Ingresa tu nombre de usuario :")

En primer lugar, cuando creamos variables u otras estructuras, se almacenan datos en la memoria. Toca hacer algo con esos datos, y es donde usamos las sentencias condicionales IF.

En el anterior ejemplo, una variable almacena el nombre d usuario ingresado al programa. Este dato se recolecta mediante el Comando Input y se procede a que se almacene en una variable. ¿Ahora qué podemos hacer?.

Sentencia-Condicional-IF-Comando-Input
Sentencia-Condicional-IF-Comando-Input

El programa al ser ejecutado se pausa en la consola de depuración y espera a que el usuario ingrese un valor, tras hacer eso el valor pasa a un sector de la memoria donde se almacena en una variable. Luego el programa termina. Pero hagamos esto un poco mas práctico.

Local nombreUsuario:String = Input("Ingresa tu nombre de Usuario :" )

If nombreUsuario = "" Then
       Print( " No has ingresado un valor valido") 
End If

En otras palabras el código anterior esta diciendo algo como esto: Si nombreUsuario es vacio Entonces Muestro el mensaje respectivo , Fin del Si.

Como es un tipo de dato cadena de texto, que por norma se escriben dentro de comillas dobles, se evalúa si no se ha escrito nada usando únicamente las comillas, si nada adentro (“”).

Esto continua siendo poco práctico, pues si el usuario pone un nombre, entonces no pasará nada, así que vamos a cambiar esto por el dato valido.

Local nombreUsuario:String = Input("Ingresa tu nombre de Usuario :" )

If nombreUsuario = "John" Then
       Print( "Bienvenido " + nombreUsuario + " Entrando al sistema...") 
End If

Como podemos ver ahora el resultado es que valida que si es el usuario “John”, muestra un mensaje aludiendo a su nombre.

Variantes de la sentencia condicional IF

Continuando con el ejemplo que hemos estado trabajando, para brindar mejor flexibilidad podemos usar opcionalmente la palabra reservada “Else” ( otro ). Con esta palabra se puede evaluar otro posible valor.

Local nombreUsuario:String = Input("Ingresa tu nombre de Usuario :" )

If nombreUsuario = "John" Then
       Print( "Bienvenido " + nombreUsuario + " Entrando al sistema...") 
Else
       Print("!Usuario no autorizado!"
End If

Como vemos la palabra reservada “Else” hace el programa mucho más practico permitiendo mostrar un mensaje pertinente en caso de muchas opciones posibles. Los “Else” solo se pueden usar una sola vez y como última opción.

Ahora bien, para mejorar esto un poco más, tenemos la opción de usar la palabra reservada “Else If” ( Otro si ). Veamos un ejemplo.

Local nombreUsuario:String = Input("Ingresa tu nombre de Usuario :" )

If nombreUsuario = "John" Then
       Print( "Bienvenido " + nombreUsuario + " Entrando al sistema como Administrador...") 

Else If nombreUsuario = "Stefany" Then
        Print ( "Bienvenida " + nombreUsuario + " Entrando al sistema Usuario...")
Else
       Print("!Nombre de usuario no encontrado!"
End If

Como se puede observar esto ayuda a que nuestra aplicación tenga la inteligencia de una simple mosca, lo suficiente para el mundo informático de hoy. Entonces usted puede usar tantos “Else IF” como crea necesario.

Recuerde que las cadenas de texto no se pueden sumar, aunque solo tengan números y que el símbolo de adicción ( + ) en las cadenas de texto se usa para unir cadenas. Es por eso que podemos usar la variable del usuario en el comando Print y para el espaciado se hace en la cadena del mismo texto. Ya como código final, usaremos una sentencia condicional IF, para salir de un bucle infinito.

Para finalizar, este tipo de sentencias nos pueden dar la opción de salir de un bucle infinito.

local n:byte = 0
Repeat
        n = n + 1
        Print ( n )
        If n = 10 Then
             Exit
        End If
ForEver

La palabra reservada Exit se usa para salir desde cualquier tipo de bucle en cuestión. En el caso anterior el bucle infinito suma una y otra vez el contenido de la variable n, cuando esta llega a 10, se evalúa mediante el IF y se procede a salir del bucle. Al no haber mas líneas de código se finalizar el programa.

2 Respuestas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *