Ejemplo 1: Pedir números por pantalla hasta que alguno sea menor o igual a 7
Tomaremos este ejemplo, donde queremos hacer que nuestro programa le pida a un usuario una serie de números cualquiera y que solo dejaremos de hacerlo cuando el usuario ingrese un número menor a 7, una vez mas es un ejemplo sencillo con el que nos aseguraremos de haber comprendido bien todos los conceptos anteriores:
Solución ejemplo 1:
Para solucionar esto, debemos tener clara cuál va a ser la condición que se debe cumplir para que el ciclo este pidiendo el numero contantemente, el ciclo se va a detener solo cuando el numero ingresado sea menor que 7, así que la condición para que se siga ejecutando es que el numero sea mayor a 7, ¿Comprender la lógica?, es simple si para que se detenga el numero debe ser menor a 7, entonces para seguirse ejecutando el numero debe ser menor o igual a 7.
En efecto los ciclos while, son bastante útiles, sin embargo desde el punto de vista de la eficiencia al igual que con los ciclos for, es recomendable evitarlos en la medida de lo posible, siempre que vayas a usar un ciclo while o cualquier tipo de ciclo en realidad, deberías preguntarte primero si es totalmente necesario o si existe una manera más efectiva de hacerlo. Evidentemente habrá situaciones en las que será casi que imprescindible usar el ciclo, pues por algo existen, esta entonces en nuestra habilidad determinar cuándo usarlos y mejor aun como usarlos de manera efectiva.
1
2
3
|
While condicion
'instrucciones
End While
|
Veamos un ejemplo:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
Module Module1
Sub Main()
Dim num As Integer = 1
While num <= 7
Console.WriteLine(num)
num += 1
End While
Console.ReadLine()
End Sub
End Module
|
Como vemos, num vale 1 al principio, se comprueba la condición, como 1 es menor o igual que 7, entra en el bucle y ejecuta las instrucciones, y así sucesivamente hasta que num vale 8, ya que 8 no es menor o igual que 7. Si num no fuera modificado, nunca saldría del bucle.
Diagrama de ciclo while
A continuación presentaremos en manera de diagrama como se vería el código:
Ejemplo 2:
Escribir un programa que solicite la carga de un valor positivo y nos muestre desde 1 hasta el valor ingresado de uno en uno.
Ejemplo: Si ingresamos 30 se debe mostrar en pantalla los números del 1 al 30.
Ejemplo: Si ingresamos 30 se debe mostrar en pantalla los números del 1 al 30.
Es de FUNDAMENTAL importancia analizar los diagramas de flujo y la posterior codificación en Visual Basic .Net de los siguientes problemas, en varios problemas se presentan otras situaciones no vistas en el ejercicio anterior.
Diagrama de flujo:
Podemos observar que se ingresa por teclado la variable n. El operador puede cargar cualquier valor.
Si el operador carga 10 el bloque repetitivo se ejecutará 10 veces, ya que la condición es "Mientras x<=n ", es decir "mientras x sea menor o igual a 10"; pues x comienza en uno y se incrementa en uno cada vez que se ejecuta el bloque repetitivo.
Si el operador carga 10 el bloque repetitivo se ejecutará 10 veces, ya que la condición es "Mientras x<=n ", es decir "mientras x sea menor o igual a 10"; pues x comienza en uno y se incrementa en uno cada vez que se ejecuta el bloque repetitivo.
A la prueba del diagrama la podemos realizar dándole valores a las variables; por ejemplo, si ingresamos 5 el seguimiento es el siguiente:
n x
5 1 (Se imprime el contenido de x)
2 " "
3 " "
4 " "
5 " "
6 (Sale del while porque 6 no es menor o igual a 5)
Programa:
Module Module1
Sub Main()
Dim n, x As Integer
Console.Write("Ingrese el valor final:")
n = Console.ReadLine()
x = 1
Do While x <= n
Console.Write(x)
Console.Write(" - ")
x = x + 1
Loop
Console.ReadKey()
End Sub
End Module
Los nombres de las variables n y x pueden ser palabras o letras (como en este caso)
La variable x recibe el nombre de CONTADOR. Un contador es un tipo especial de variable que se incrementa o decrementa con valores constantes durante la ejecución del programa.
El contador x nos indica en cada momento la cantidad de valores impresos en pantalla.
El contador x nos indica en cada momento la cantidad de valores impresos en pantalla.



/\ /\
ResponderEliminar(O_O)
&(> 🍔>
Muy interesante
ResponderEliminarBuen trabajo,sigue asi
ResponderEliminarMe gustaron sus ejemplos
ResponderEliminar