jueves, 10 de marzo de 2016

Capitulo 7: Small Basic. Condiciones.

Diario de un programador.- Dia 16

Aprendiendo a tomar decisiones... La instrucción If
En muchas ocasiones, los programas necesitan tomar decisiones dependiendo de una o más opciones. Por ejemplo, si se cumple una condición, el programa hará una cosa y si no se cumple, entonces hará otra. Las condiciones hacen que los programas tomen distintos caminos a lo largo del código. El controlar esos caminos o direcciones, se le conoce como control de flujo. Para lograr esto, en programación se usa la instrucción if (si, en inglés)
Para que esto funcione, las condiciones se tienen que comparar con algún valor u otra condición. Por ejemplo:
Si variable es igual a 10
realizar acción...
fin

Otro ejemplo.

Si variable es mayor a 10
realizar acción...
fin

Si variable es menor a 10
realizar acción...
fin

Etc, etc.
Para poder realizar estas comparaciones, en programación se utilizan los siguientes signos:
< menor que
> mayor que
<= menor o igual
>= mayor o igual
== igual a .Algunos lenguaje como small basic utilizan solo un signo =
<> distinto a. Algunos lenguajes utilizan el signo != 

Utilizaré para este ejemplo, el diagrama de flujo que ocupé en el capítulo 2 

Primero voy a declarar una variable que llamaré dinero y le daré un valor de 500

dinero = 500
Luego, si dinero es igual o mayor a 500 entonces
compro la bebida
si dinero es menor a 500 entonces
no puedo comprar la bebida

Diario de un programador.- Dia 17
Al pasar esto a código quedaría de la siguiente forma:
 Y si lo ejecuto, muestra lo siguiente:


En este código, se puede ver el uso y la sintaxis de la instrucción if en la línea 3. Al ser "if" una instrucción, el programa la destaca con un color azul claro. La línea 3 se interpreta "Si dinero es mayor o igual a 500, entonces (then) escribir "Compro la bebida".
La sintaxis para el uso de la instrucción if en small basic se compone de tres partes, las cuales se escriben en el siguiente orden: La palabra "if", la condición a comparar (en este caso compara si la variable dinero es igual o mayor a 500) y la palabra "then", que significa "entonces". Debo aclarar que en internet he visto que la instrucción if, cambia en su sintaxis dependiendo en el lenguaje que se ocupe. En algunos no usa la palabra then, en otros, la evaluación o comparación debe escribirse entre paréntesis, en otros usa llaves {} etc., pero su objetivo siempre es el mismo y es poder controlar el flujo de un programa.
La línea 4 se ejecutará solamente si se cumple la condición indicada en la línea 3.


Esto indica que si la variable dinero es mayor o igual a 500. O sea que el que muestre o no la línea 4, depende directamente de la condición evaluada en la línea 3. Para una mayor claridad, la línea 4 fue indentada (tiene una sangría), con lo cual se hace más fácil, visualmente hablando, ver cuál código depende de la instrucción if.
La línea 5 "EndIf", indica el final de la instrucción if. Todo lo que se encuentre entre if y endIf, se considera parte de la instrucción y como dije anteriormente, se ejecutará solamente si la evaluación se cumple, o como se dice en programación, la condición es verdadera.
Una vez que el programa termina de evaluar la condición if, o sea llega a la instrucción endIf, continúa con la siguiente línea, en este caso al llegar a la línea 7 se encuentra con otra instrucción if.
 En este caso dice, si  dinero es menor a 500 entonces mostrar "No puedo comprarla". Como se puede ver, la condición no se cumple, por lo tanto no se ejecuta la instrucción de la línea 8 y pasa automáticamente a la línea 9. Para hacer que esta condición se cumpla, tendría que modificar el valor de la variable dinero, por un valor menor a 500, solo así esta condición se podría cumplir.


Veré otro ejemplo, también del capítulo 2:

1.- Inicio
2.- Escribir - ¿Cuál es tu edad?
3.- Leer edad
4.- Si tu edad es mayor o igual a 18.
5.- Escribir: Eres mayor de edad
6.- Si tu edad es menor a 18.
7.- Escribir: Eres menor de edad
8.- Fin
Ahora pasaré esto a código:

TextWindow.Write("Cual es tu edad? ")
edad = TextWindow.ReadNumber()
If edad >= 18 Then
  TextWindow.WriteLine("Eres mayor de edad")
EndIf

If edad < 18  Then
  TextWindow.WriteLine("Eres menor de edad")
EndIf



Esto es todo por ahora, explicaré un poco más en el proximo capitulo. Hasta luego.




Gustavo J. Cerda Nilo

Julio 2015. Última modificación, Marzo 2016

1 comentario:

  1. vengo del futuro y que mal que ya no subas estas lecciones :(

    ResponderEliminar

C++ El apuntador This

El apuntador This En C++, cada objeto tiene acceso a su propia dirección a través de un puntero o apuntador denominado This. Lo...