22. C++ || Estructuras de control
Ya casi finalizando este apartado de bucles en C++, quiero dejar algunos conceptos en claros que creo que son de bastante interés, estos conceptos son:
Como se han podido dar cuenta, todos los bucles hacen lo mismo, repiten cierto número de sentencias una cantidad de veces específica, la diferencia de cada uno de ellos es cómo repiten esa ejecución. El bucle while y do-while a veces causan mucha confusión por su gran similitud, pero sin muchas palabras, la diferencia entre ambos bucles es que el bucle while primero evalúa una condición y luego pasa a ejecutar las sentencias del cuerpo del bucle en caso de que esa condición sea cierta. El bucle do-while primero ejecuta las sentencias del cuerpo del bucle sin importar que la condición sea falsa, después de hacer esto es que evalúa la condición y hace lo mismo que los demás bucles en C++, si la condición es verdadera, vuelve a repetir la ejecución, en caso de ser falsa, no hace nada y finaliza ese bucle.
Como he dicho varias veces, todos los bucles hacen lo mismo, repiten cierto número de sentencias una cantidad de veces específica, la diferencia de cada uno de ellos es cómo repiten esa ejecución.
*
***
*****
*******
*********
- Diferencias entre el bucle while y do-while en C++.
- Comparación de los bucles en C++.
- ¿Cómo anidar bucles en C++?
Diferencias entre el bucle while y do-while en C++
Como se han podido dar cuenta, todos los bucles hacen lo mismo, repiten cierto número de sentencias una cantidad de veces específica, la diferencia de cada uno de ellos es cómo repiten esa ejecución. El bucle while y do-while a veces causan mucha confusión por su gran similitud, pero sin muchas palabras, la diferencia entre ambos bucles es que el bucle while primero evalúa una condición y luego pasa a ejecutar las sentencias del cuerpo del bucle en caso de que esa condición sea cierta. El bucle do-while primero ejecuta las sentencias del cuerpo del bucle sin importar que la condición sea falsa, después de hacer esto es que evalúa la condición y hace lo mismo que los demás bucles en C++, si la condición es verdadera, vuelve a repetir la ejecución, en caso de ser falsa, no hace nada y finaliza ese bucle.
Comparación de los bucles en C++
Como he dicho varias veces, todos los bucles hacen lo mismo, repiten cierto número de sentencias una cantidad de veces específica, la diferencia de cada uno de ellos es cómo repiten esa ejecución.
- El bucle while se repite mientras su condición permanece verdadera, su uso más frecuente es cuando no está controlado por una variable contador. Se debe utilizar cuando se desea saltar el cuerpo del bucle si la condición es falsa
- El bucle for se utiliza normalmente cuando tenemos conocimiento de la cantidad de veces que queremos que se repita el bucle. Por ejemplo, si quisiéramos sacar el promedio de 10 notas, podríamos utilizar un bucle for ya que, la cantidad de veces que queremos repetir el ciclo, la conocemos y es igual a 10
- El bucle do-while se ejecuta similar al bucle while excepto que las sentencias se van a ejecutar al menos una vez. Su uso es adecuado cuando se debe asegurar que se ejecute el bucle al menos una vez
¿Cómo anidar bucles en C++?
Pues es muy sencillo y se logra de forma similar a como hicimos con la sentencia if, un bucle anidado en C++ consta de un bucle externo con uno o más bucles internos. Debes tomar en consideración que cada vez que se repite un bucle externo, se va a repetir todo el bucle interno. Por ejemplo, vamos a construir un triángulo isósceles. El triángulo isósceles se realiza con un bucle externo y dos bucles internos, la salida que vamos a obtener será la siguiente.***
*****
*******
*********
#include <iostream> using namespace std; int main () { const int numLineas = 5; const char blanco = ' '; const char asterisco = '*'; //Este bucle va a dibujar cada línea y es //el bucle externo for (int fila = 1; fila <= numLineas; fila++) { //inicio del primer bucle interno //este bucle imprime los espacios en blancos for(int blancos = numLineas - fila; blancos > 0; blancos--) { cout<<blanco; } //inicio del segundo bucle interno //es bucle imprime los asteriscos for (int i = 1; i < 2 * fila; i++) { cout<<asterisco; } //Salto de línea cout<<endl; } //Fin del bucle externo return 0; }
Publica un comentario