Diferencia entre revisiones de «Plantilla:ManuelRomero/PHP/EstructurasControlRepetitivo»
De WikiEducator
(→Iteración for) |
(→Iteración for) |
||
Línea 237: | Línea 237: | ||
</source> | </source> | ||
− | {{MRM_Puntos clave| | + | {{MRM_Puntos clave|Title=Partes de la estructura| |
;Estructura for | ;Estructura for | ||
*tiene tres partes | *tiene tres partes | ||
Línea 251: | Línea 251: | ||
;3.-Incremento de la expresión inicial | ;3.-Incremento de la expresión inicial | ||
:Marca el paso o cómo se va modificando la variable de control en cada iteración | :Marca el paso o cómo se va modificando la variable de control en cada iteración | ||
− | } | + | }} |
{{MRM_Actividas|Title=Ejemplo de la estructura| | {{MRM_Actividas|Title=Ejemplo de la estructura| | ||
*Realiza la suma de los 100 primeros números | *Realiza la suma de los 100 primeros números | ||
Línea 266: | Línea 266: | ||
echo "<h2>La suma de los 100 primeros números es $suma</h1>"; | echo "<h2>La suma de los 100 primeros números es $suma</h1>"; | ||
</source> | </source> | ||
− | + | }} | |
*Esta estructura se usa con mucha frecuencia | *Esta estructura se usa con mucha frecuencia | ||
{{MRM_Puntos clave|Title=Cuándo usarla}} | {{MRM_Puntos clave|Title=Cuándo usarla}} |
Revisión de 19:04 27 nov 2024
Introducción
En este tema aprenderemos tres estructuras de control que permiten repetir bloques de código:
- while: Repite un bloque mientras una condición sea verdadera.
- do...while: Similar al while, pero asegura que el bloque se ejecute al menos una vez.
- for: Útil cuando conocemos de antemano el número de iteraciones necesarias.
- Empecemos por la estructura while, explicando su funcionamiento básico y resolviendo ejercicios prácticos.
Iteración while
Un bucle while repite un bloque de código mientras una condición sea verdadera. Para evitar errores, debemos prestar atención a tres aspectos fundamentales:
- Inicializar la variable de control antes de entrar en el bucle.
- Actualizar la variable de control dentro del bucle para evitar bucles infinitos.
- Realizar correctamente la evaluación de la condición utilizando operadores de comparación (<, <= , >, >= , ...).
- Sintaxis
while (expresion_booleana){ //instrucciones del bloque }
//Inicializamos variables de la condición $contador = 0; //Establecemos la condición cuidando mucho //los extremos (< o <= ...) while ($contador < 10){ //Actualizamos la variable dentro del bucle $contador ++ //comentar este operador //Realizamos las acciones echo "Estoy en la interación $contador<br />" }
|
|
|
Iteracción do-while
- Este tipo de bucle donde seguro que al menos se ejecuta un iteracción
- Respecto al anterior nos ahorra una comparación.
- La sintaxis de esta estructura es la siguiente:
do { //Acciones }while (expresión_booleana);
|
- Ejercicios
Ejercicio 19: Genera Números de Bonoloto
|
Ejercicio 19 :Genera una tabla ASCII completa
chr($numero) //retorna el carácter en ascii del código que se pasa como argumento printf ("%d - %c", $numero, $numero); //Esta función // visualiza con formato decimal (%d) y carácter (%c), //los valores pasados como últimos argumentos
|
}}
Iteración for
- Es un bucle de tipo contador
for (expresion_inicial; condicion;expresion_actualizar){ sentencias; }
Si da un valor false, ya no se ejecuta ninguna vez Si no hay expresión se toma como true En este caso para que el bucle no sea infinito deberá llevar algún break (instrucción de terminación de bloque) en algún momento
|
- Esta estructura se usa con mucha frecuencia
- Siempre que sepamos en número de veces que vamos a realizar una acción usaremos esta estructura
}}
- Estructura for
- condición
<?php for ($a=0; ;$a++){ echo "$a*$a=".$a*$a."<br>"; } ?>
- Es como si dentro del bucle establecemos la condición de terminación usando la instrucción de terminación de bloque break
- Observa el siguiente código forzado y compáralo con el anterior (mira que la sección de condición está vacía)
<?php for ($a=0; ;$a++){ echo "$a*$a=".$a*$a."<br>"; if ($a==10) break; } ?>
- Estructura for
- expresion_actualizar
- Esta expresión actualiza el valor de alguna/as variables
- Se ejecuta en cada interactivo
- El ejemplo anterior
<?php for ($a=0;$a<10 ;$a++){ echo "$a*$a=".($a*$a)."<br>"; } ?>