EL CICLO
WHILE
El ciclo while
(mientras) es otra instrucción para crear ciclos, necesita de una condición
para poder repetir su ciclo. Debido a esta característica es que en ocasiones,
no se sabe cuándo va a finalizar el ciclo, ya que muchas veces, la condición
dependerá de lo que indique el usuario. Con los ciclos while, es muy frecuente
que se produzcan ciclos infinitos si no ponemos atención a las condiciones que
hacen que éste finalice.
La sintaxis de un ciclo while, es la siguiente:
While condicion
Instrucciones...
endWhile
EJEMPLO
TextWindow.Write("Ingresa un cinco para continuar
")
numero =
TextWindow.ReadNumber()
While
numero <> 5
TextWindow.Write("Debes ingresar el
cinco para continuar ")
numero = TextWindow.ReadNumber()
EndWhile
TextWindow.WriteLine("Gracias, ahora
podemos continuar")
La línea “While numero <> 5” se leería
como "Mientras que la variable
numero sea distinto a 5..." Esta condición se ejecutará si el usuario
ingresa un número distinto a 5, que es el número que estamos solicitando. Si el
usuario ingresa cualquier otro número, entonces se cumplirá la condición y se
ejecutarán las líneas que siguen, "Debes ingresar el cinco para
continuar" y continuará ejecutándose el bucle hasta que el usuario ingrese
el número 5.
Por casos como este,
es que a veces no sabemos cuántas veces se va a ejecutar el ciclo, porque
depende exclusivamente de lo que escriba el usuario.
Hay que tener cuidado
con las condiciones que coloquemos, como dije porque podríamos tener un ciclo
infinito, como en el siguiente ejemplo
TextWindow.Write("Ingresa un numero ")
numero =
TextWindow.ReadNumber()
While
numero > 0
TextWindow.WriteLine(numero)
EndWhile
En este caso, si se ingresa cualquier
número positivo se ejecutará el ciclo, pero no hay nada que lo detenga, por lo
que se produce un ciclo infinito.
Con el ciclo while, también podemos
hacer ciclos con resultados similares a los obtenidos con el ciclo for, por
ejemplo, aquí mostraré como quedaría la tabla de multiplicar que antes había
hecho con el ciclo for, pero esta vez será hecha con el ciclo while.
TextWindow.Write("Ingresa un numero ")
num1 =
TextWindow.ReadNumber()
num2 = 0
While num2
< 10
num2 = num2 + 1
TextWindow.WriteLine(num1 + " x " +
num2 + " = " + num1 * num2 )
EndWhile
En este caso, hice una
variable llamada num2, la cual inicié con valor cero. Esta variable irá
aumentando de valor en cada ciclo, esto se logró debido a la variable num2 =
num2 + 1. El ciclo terminará cuando esta variable alcance un valor de 10.
Ocupando la
instrucción while, se puede hacer que un programa continúe realizando tareas si
es que el usuario así lo desea. Colocaré un ejemplo utilizado en el capítulo 7,
pero esta vez un poco mejorado añadiendo la instrucción while
opcion =
"s"
While
opcion = "s"
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
TextWindow.Write("Continuar? s/n ")
opcion = TextWindow.Read()
EndWhile
TextWindow.WriteLine("Hasta luego")
En este caso, para
poder entrar en el bucle, tuve que crear una variable que lo permita, en este
caso fue la variable “opcion” a la cual le di un valor de “s”, entonces, la
instrucción while validó que la variable “opción” tuviese ese valor y al ser la
condición verdadera, se inició el bucle. Casi llegando al final del código se
pregunta si se desea continuar. Entonces se ocupó nuevamente a la variable
“opción”, a la cual si se escribe una “s”, el programa se volverá a ejecutar,
esto es porque así fue declarada en un principio, donde el bucle se repetirá si
la variable “opción" es igual a “s”. Por supuesto, el programa solamente
es sensible a la letra “s” y cualquier otra letra o número, hará que este
finalice (aunque en la opción aparece s/n), pero arreglar eso, es algo que
seguramente aprenderé a controlar en otro capítulo.
Un nuevo ejemplo donde se creará una
especie de login a un sistema
While usuario <> "estudiante"
TextWindow.Write("Ingresa tu nombre de usuario ")
usuario =
TextWindow.Read()
If usuario =
"estudiante" Then
TextWindow.WriteLine("Bienvenido al sistema!!!")
Else
TextWindow.WriteLine("Nombre de usuario no valido")
EndIf
EndWhile
Aquí, nuevamente se
creó una variable al inicio del programa (variable usuario) a la cual se le
asignó un valor de “@” (aunque pudo ser cualquier otro, es solo para
inicializarla) luego, la siguiente línea se podría leer como “mientras usuario
sea distinto a estudiante…” Y como efectivamente, la variable usuario es
distinta, entonces se ingresa al bucle, donde solo se podrá finalizar el
programa si se ingresa el login establecido “estudiante”.
Como se puede apreciar, se pueden
hacer muchas cosas con los bucles, pero esto aún no termina porque aún falta
ver otro tipo de bucle, muy parecido a este, pero eso será en el próximo
capítulo.
INGRESO AL ZOOM
JORGE HERRERA FLORES le está invitando a una reunión de Zoom programada.
Tema: COMPUTACION 5TO SECUNDARIA
Hora: 6 may 2020 03:00 PM Lima
Unirse a la reunión Zoom
https://us04web.zoom.us/j/73357964136
ID de reunión: 733 5796 4136
DAR CLIC EN LA IMAGEN PARA DESCARGAR
ARCHIVOS
GRABAR TU ARCHIVO DE LA SIGUIENTE MANERA
GRADO
– NUMERO DE PRÁCTICA – APELLIDOS Y
NOMBRE.EXTENSION
5SP4HERRERAJORGE.SB
ENVIAR AL SIGUIENTE CORREO
Jherreramcm2019@gmail.com
No hay comentarios.:
Publicar un comentario