El bucle en los lenguajes de programación es una característica que facilita la ejecución de un conjunto de instrucciones/funciones repetidamente mientras alguna condición se evalúa como verdadera. Los bucles simplifican la tarea de los programadores. Scala proporciona los diferentes tipos de bucle para manejar la situación basada en condiciones en el programa. Los bucles en Scala son:
- mientras bucle
- do..while Bucle
- en bucle
- Bucles anidados
mientras bucle
Un ciclo while generalmente toma una condición entre paréntesis. Si la condición es verdadera , se ejecuta el código dentro del cuerpo del ciclo while. Un bucle while se utiliza cuando no sabemos el número de veces que queremos que se ejecute el bucle, sin embargo, conocemos la condición de terminación del bucle. También se conoce como bucle controlado por entrada, ya que la condición se comprueba antes de ejecutar el bucle. El ciclo while se puede considerar como una declaración if repetida.
Sintaxis:
while (condition) { // Code to be executed }
Diagrama de flujo:
- Mientras que el ciclo comienza con la verificación de la condición. Si se evaluó como verdadero, entonces se ejecutan las declaraciones del cuerpo del ciclo; de lo contrario, se ejecuta la primera declaración que sigue al ciclo. Por este motivo, también se denomina bucle de control de entrada.
- Una vez que la condición se evalúa como verdadera, se ejecutan las declaraciones en el cuerpo del ciclo. Normalmente, las declaraciones contienen un valor de actualización para la variable que se procesa para la siguiente iteración.
- Cuando la condición se vuelve falsa, el ciclo termina, lo que marca el final de su ciclo de vida.
Ejemplo:
Scala
// Scala program to illustrate while loop object whileLoopDemo { // Main method def main(args: Array[String]) { var x = 1; // Exit when x becomes greater than 4 while (x <= 4) { println("Value of x: " + x); // Increment the value of x for // next iteration x = x + 1; } } }
Producción:
Value of x: 1 Value of x: 2 Value of x: 3 Value of x: 4
Ciclo while infinito : el ciclo while puede ejecutarse infinitas veces, lo que significa que no hay una condición de terminación para este ciclo. En otras palabras, podemos decir que hay algunas condiciones que siempre se cumplen, lo que hace que el ciclo while se ejecute infinitas veces o podemos decir que nunca termina.
Ejemplo: el programa a continuación imprimirá la declaración especificada en un tiempo infinito y también dará el error de tiempo de ejecución Killed (SIGKILL) en el IDE en línea.
Scala
// Scala program to illustrate Infinite while loop object infinitewhileLoopDemo { // Main method def main(args: Array[String]) { var x = 1; // this loop will never terminate while (x < 5) { println("GeeksforGeeks") } } }
Producción:
GeeksforGeeks GeeksforGeeks GeeksforGeeks GeeksforGeeks . . . .
do..while Bucle
Un bucle do…while es casi lo mismo que un bucle while. La única diferencia es que el bucle do…while se ejecuta al menos una vez. La condición se comprueba después de la primera ejecución. Un ciclo do..while se usa cuando queremos que el ciclo se ejecute al menos una vez. También se conoce como bucle controlado de salida, ya que la condición se comprueba después de ejecutar el bucle.
Sintaxis:
do { // statements to be Executed } while(condition);
Diagrama de flujo:
Ejemplo:
Scala
// Scala program to illustrate do..while loop object dowhileLoopDemo { // Main method def main(args: Array[String]) { var a = 10; // using do..while loop do { print(a + " "); a = a - 1; }while(a > 0); } }
Producción:
10 9 8 7 6 5 4 3 2 1
en bucle
for loop tiene una funcionalidad similar a while loop pero con una sintaxis diferente. Se prefieren los bucles for cuando se conoce de antemano el número de veces que se van a ejecutar las sentencias de bucle. Hay muchas variaciones de «bucle for en Scala» que discutiremos en los próximos artículos. Básicamente, es una estructura de control de repetición que permite al programador escribir un ciclo que necesita ejecutarse un número determinado de veces.
Ejemplo:
Scala
// Scala program to illustrate for loop object forloopDemo { // Main Method def main(args: Array[String]) { var y = 0; // for loop execution with range for(y <- 1 to 7) { println("Value of y is: " + y); } } }
Producción:
Value of y is: 1 Value of y is: 2 Value of y is: 3 Value of y is: 4 Value of y is: 5 Value of y is: 6 Value of y is: 7
Bucles anidados
El bucle que contiene un bucle dentro de otro bucle se conoce como bucle anidado. Puede contener el bucle for dentro de un bucle for o un bucle while dentro de un bucle while. También es posible que un ciclo while pueda contener el ciclo for y viceversa.
Ejemplo:
Scala
// Scala program to illustrate nested loop object nestedLoopDemo { // Main Method def main(args: Array[String]) { var a = 5; var b = 0; // outer while loop while (a < 7) { b = 0; // inner while loop while (b < 7 ) { // printing the values of a and b println("Value of a = " +a, " b = "+b); b = b + 1; } // new line println() // incrementing the value of a a = a + 1; // displaying the updated value of a println("Value of a Become: "+a); // new line println() } } }
Producción:
(Value of a = 5, b = 0) (Value of a = 5, b = 1) (Value of a = 5, b = 2) (Value of a = 5, b = 3) (Value of a = 5, b = 4) (Value of a = 5, b = 5) (Value of a = 5, b = 6) Value of a Become: 6 (Value of a = 6, b = 0) (Value of a = 6, b = 1) (Value of a = 6, b = 2) (Value of a = 6, b = 3) (Value of a = 6, b = 4) (Value of a = 6, b = 5) (Value of a = 6, b = 6) Value of a Become: 7
Publicación traducida automáticamente
Artículo escrito por VipinKashyap y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA