12 - Estructuras repetitivas o bucles (FOR Y FOREACH) en PHP - Curso PHP 8 desde cero
Summary
TLDREste capítulo explica dos estructuras de bucles en algoritmos: 'for' y 'for each'. El bucle 'for' se presenta como una alternativa elegante al 'while', permitiendo definir la variable de control dentro del bucle y especificar inicialización, condición y actualización en una sola línea. Se ilustra con un ejemplo de imprimiendo asteriscos en función de la fila. El bucle 'for each' se relaciona con arrays, permitiendo recorrer y manipular elementos sin necesidad de usar índices, demostrando con un ejemplo de imprimir nombres almacenados en un array. Finalmente, se menciona cómo interrumpir un bucle bajo ciertas condiciones.
Takeaways
- 🔁 Los bucles 'for' y 'for each' son estructuras de control utilizadas para repetir bloques de código.
- 📝 El bucle 'for' se parece al bucle 'while', pero permite una sintaxis más elegante para iterar.
- 🔢 En un bucle 'for', se define una variable de iteración dentro del bucle y se especifica su incremento en cada iteración.
- 🎯 El bucle 'for' se usa para ejecutar un código un número específico de veces, definido por una condición.
- 🌟 Se puede utilizar un bucle 'for' anidado para imprimir un patrón de asteriscos donde la cantidad de asteriscos en cada fila coincide con el número de la fila.
- 📑 Los bucles 'for each' son útiles para recorrer arrays y objetos, imprimiendo o manipulando sus elementos sin necesidad de usar índices.
- 📚 Los arrays permiten almacenar múltiples datos en una sola variable, y se pueden acceder a sus elementos por medio de índices.
- 🔑 En un bucle 'for each', se puede acceder a los valores de un array sin necesidad de conocer sus índices, facilitando la iteración sobre colecciones de datos.
- 🖋️ Para imprimir en varias líneas en HTML, se utiliza el salto de línea ' ' fuera del bucle que imprime los asteriscos.
- 🔍 Si se requiere conocer el índice de un elemento en un bucle 'for each', se puede definir una variable adicional para almacenar este valor.
Q & A
¿Qué son las estructuras algorítmicas repetitivas mencionadas en el guión?
-Las estructuras algorítmicas repetitivas mencionadas son el bucle 'for' y el bucle 'forEach', que se utilizan para ejecutar bloques de código múltiples veces.
¿Cómo se diferencia el bucle 'for' del bucle 'while' según el guión?
-El bucle 'for' se diferencia del bucle 'while' en que permite escribir la sentencia de manera más elegante y permite definir la variable de control dentro del bucle mismo.
¿Qué componentes son necesarios para construir un bucle 'for' según el guión?
-Para construir un bucle 'for' se necesitan: la inicialización de la variable de control, la condición de continuidad del bucle, el incremento de la variable y el bloque de código a ejecutar.
¿Qué es lo que hace diferente al bucle 'for' al poder definir la variable de control dentro del bucle?
-Al definir la variable de control dentro del bucle 'for', se encapsula la lógica de control del bucle, facilitando la lectura y mantenimiento del código.
¿Cuál es la utilidad de un bucle anidado según el ejemplo del guión?
-La utilidad de un bucle anidado es poder ejecutar un bloque de código un número específico de veces, dependiendo de la iteración actual de un bucle externo, como se muestra en el ejemplo de imprimir asteriscos en filas.
¿Cómo se logra imprimir un patrón de asteriscos en función de las filas usando un bucle 'for' según el guión?
-Se utiliza un bucle 'for' externo para iterar sobre las filas y un bucle 'for' interno para iterar y imprimir un asterisco por cada iteración, colocando un salto de línea después de cada fila.
¿Qué son los arrays y cómo se relacionan con el bucle 'forEach'?
-Los arrays son estructuras de datos que almacenan múltiples valores en una sola variable. El bucle 'forEach' se relaciona con los arrays porque permite recorrer y manipular cada elemento del array de manera sencilla.
¿Cómo se imprime cada elemento de un array utilizando el bucle 'forEach' según el guión?
-Mediante el bucle 'forEach', se pasa una función que recibe cada elemento del array como argumento y se imprime directamente, sin necesidad de utilizar índices.
¿Cómo se puede obtener el índice de un elemento en un array durante un bucle 'forEach' si es necesario?
-Para obtener el índice de un elemento en un bucle 'forEach', se puede declarar una segunda variable que almacenará el índice del elemento actual en cada iteración.
¿Qué se puede hacer si necesitamos interrumpir el flujo de un bucle antes de que termine su ejecución según el guión?
-Si se necesita interrumpir el flujo de un bucle antes de que termine, se pueden utilizar sentencias de control como 'break' o 'return' para salir del bucle en caso de cumplirse una condición específica.
Outlines
🔁 Introducción a los Bucles For y For Each
En este primer párrafo, se aborda la introducción a dos estructuras de control de bucles: el bucle 'for' y el bucle 'for each'. El bucle 'for' se compara con el bucle 'while', destacando que, aunque funcionan de manera similar, el 'for' permite una sintaxis más elegante. Se explica que en un bucle 'for', se define una variable de control dentro del bucle y se pasa como primer parámetro. Luego, se establece la condición de continuación del bucle y el incremento de la variable. Se ejemplifica con una operación de potenciación y se propone un ejercicio para imprimir una pirámide de asteriscos, utilizando un bucle 'for' anidado para controlar la cantidad de asteriscos por fila. Finalmente, se menciona la necesidad de insertar un salto de línea para que los asteriscos se muestren correctamente en varias filas.
📚 Utilización de Bucles For y For Each con Arrays
En el segundo párrafo, se profundiza en el uso de bucles 'for' y 'for each' con arreglos (arrays). Se describe brevemente qué son los arreglos y cómo almacenan múltiples datos en una sola variable. Se ejemplifica con un arreglo de nombres y se muestra cómo imprimir un nombre específico utilizando su índice. Luego, se presenta el bucle 'for each', que permite recorrer los elementos de un arreglo sin necesidad de conocer su índice. Se ilustra con un ejemplo que imprime cada nombre del arreglo. Además, se explica cómo obtener el índice de un elemento dentro del bucle 'for each' utilizando una variable adicional. Se concluye con una demostración de cómo imprimir tanto el nombre como su índice de almacenamiento en el arreglo.
🔚 Conclusión y Próximos Pasos
Este tercer párrafo cierra el capítulo actual y establece la transición al siguiente. Se menciona que se ha concluido la explicación de las estructuras algorítmicas repetitivas y se alude a que el próximo capítulo tratará sobre cómo interrumpir el flujo de un bucle en caso de cumplirse una condición específica. Se despide al público con la promesa de explorar nuevos temas en futuras sesiones.
Mindmap
Keywords
💡Bucle for
💡Bucle for each
💡Array
💡Variable de control
💡Condición de terminación
💡Incremento
💡Sentencia
💡Imprimir
💡Salto de línea
💡Índice
Highlights
Se discuten dos estructuras algorítmicas repetitivas: el bucle for y el bucle forEach.
El bucle for es similar al bucle while pero con una sintaxis más elegante.
El bucle for permite definir la variable de control dentro del bucle.
Se explica cómo se estructuran los parámetros del bucle for.
Se muestra un ejemplo de cómo utilizar el bucle for para calcular potencias.
Se propone un ejercicio para imprimir asteriscos en función de la cantidad de filas.
Se utiliza un bucle anidado para imprimir un patrón de asteriscos.
Se aborda la necesidad de insertar saltos de línea para formatear la salida.
Se introduce la concepto de arrays y su relación con los bucles forEach.
Se describe cómo se utiliza el bucle forEach para recorrer arrays.
Se muestra un ejemplo práctico de cómo imprimir nombres almacenados en un array.
Se explica cómo se puede obtener el índice de un elemento en un bucle forEach.
Se demuestra la utilidad de los índices en el contexto de la lógica del programa.
Se menciona que en el próximo capítulo se explorará cómo interrumpir el flujo de un bucle.
Se anuncia el final del capítulo y la continuación en el siguiente.
Transcripts
o la del amigos en este capítulo vamos a
hablar sobre dos estructuras algorítmica
repetitivas más una de ellas es el bucle
for y la otra es el bucle for each el
buqué for funciona de una manera muy
similar o exactamente igual que el bucle
while pero nos permite escribir la
sentencia de una manera a mi parecer
mucho más elegante y esta estructura
consiste en lo siguiente vamos a
comentar este bucle why que tenemos acá
y voy a hacer lo siguiente acá abajo
vamos a escribir la siguiente sentencia
form
abrimos unos paréntesis y acá escribimos
estas llaves que tenemos acá nosotros
cuando utilizamos el buque while tuvimos
que definir una variable llamada i pero
esta variable lo definimos por fuera acá
lo tenemos muy bien con el bucle ford
nosotros vamos a poder definir esta
variable dentro del mismo bucle y se lo
tenemos que pasar como primer parámetro
de la sentencia que coloquemos en estos
paréntesis que tenemos acá por eso que
acá
y que el valor de ahí es igual a cero
ahora como segundo parámetro que le
pasemos a esta sentencia llamada ford
tenemos que ponerle la condición que
queremos que evalúe el bucle la
condición que estuvimos utilizando
anteriormente era esta el valor de y es
menor o igual que la variable exponente
entonces esta condición se lo vamos a
colocar acá y como tercer parámetro lo
que debemos hacer es colocar de cuánto
en cuánto quiero que salte el valor de y
por ejemplo nosotros hemos colocado acá
la variable y más más eso lo colocamos
acá y más más y por último entre esta
llave de apertura y esta llave de cierre
colocamos el código que queremos que se
ejecute en este caso lo que quiero que
se ejecute es esto
el resultado es igual a resultado por
base esto hace exactamente lo mismo que
esto que tenemos acá solo que como
mencionó el valor de iu o la variable y
le hemos definido dentro del mismo bucle
dentro del mismo bucle también hemos
colocado de cuánto en cuanto quiero que
aumente si ahora viniéramos acá y
actualizamos encontramos esto que
tenemos acá el valor de 5 elevado a la 4
es 31 25 para ejemplificar esto un poco
mejor vamos a poner un pequeño ejercicio
yo quiero lograr lo siguiente quiero
imprimir en pantalla esto una especie de
algo bonito quiero que aparezca un
asterisco en la primera fila en la
segunda fila quiero que aparezca otro
asterisco en la tercera fila quiero que
aparezca un tercer asterisco y así
conforme más filas tengamos más
asterisco se debería mostrar la cantidad
de asteriscos debe coincidir con el
número de filas en el cual nos
encontremos entonces en primer lugar
vamos a definir cuántas filas queremos
tener cuantas filas queremos que se
muestre entonces para eso vamos a poner
una variable que se va a llamar filas y
por ejemplo imaginemos que quiero que
haya 10 filas
como va a haber diez filas voy a querer
que ingrese diez veces a este bucle
entonces vamos a utilizar el bucle for
para esa finalidad vamos a escribir acá
for vamos a decir que el valor de y
quiero que inicial hice en uno la
condición va a ser que el valor de y sea
menor o igual que la cantidad de filas y
quiero que aumente de uno en uno con
esto vamos a lograr que ingrese a este
bucle y esto es es muy bien pero como
haríamos que dependiendo la fila se
imprima un valor distinto o sea una
cantidad distinta asteriscos para eso
dentro de este bucle vamos a colocar un
bucle adicional de la siguiente manera
vamos a volver a colocar el bucle fort
pero claro acá la variable ya no va a
ser y si no tenemos que elegir otra por
ejemplo vamos a elegir la variable j
vamos a colocar de igual manera que el
valor de jota va a iniciar en 1 y vamos
a indicar que quiero que ingrese a este
bucle mientras se cumpla que el valor de
jota sea menor o igual
que el valor de iu es decir si estamos
en la fila 1 va a ingresar una vez si
estamos en la fila 2 va a ingresar 2
veces y así sucesivamente y que quiero
que ocurra acá quiero que mi imprimas en
pantalla un asterisco ahora si nosotros
nos vamos a nuestro navegador y
actualizamos vamos a ver que todos estos
asteriscos se están colocando en una
única línea vamos a comprobar
efectivamente todos los asteriscos están
imprimiendo en una única línea y por qué
ocurre eso ocurre porque no hemos puesto
ningún salto de línea pero donde
deberíamos poner ese salto de línea ese
salto de línea lo vamos a colocar acá
fuera de este foro ya que este foro se
va a encargar de imprimir la cantidad de
estudios teóricos que correspondan por
línea entonces luego de imprimir todos
los asteriscos de una determinada fila
vamos a colocar un saldo en línea
entonces por acá escribo el salto de
línea y ahora venimos actualizamos
encontramos la siguiente estructura como
pueden ver nosotros podemos colocar
bucles dentro
otros bucles muy bien la próxima
estructura que vamos a ver se le conoce
como bucles foris estos bucles están
netamente relacionados con los arrays
los arrays aún no lo hemos visto pero
podríamos hacer una breve introducción
los arrays nos sirven cuando queremos
almacenar más de un dato en una variable
por ejemplo yo puedo definir una
variable llamada nombres e indicar que
se trata de un array y dentro de esa
raíz colocar todos los nombres que yo
quisiera almacenar por ejemplo puedo
poner víctor iris elisabets y joel si yo
quisiera imprimir el nombre o sea los
nombres que aparecen acá lo que yo
podría hacer es colocar acá lo siguiente
poner hecho acceder al nombre de la
variable y pasarle un índice el índice
correspondiente al nombre que yo quiero
imprimir cada uno de estos valores que
hemos colocado en el array tienen un
índice y ese índice comienza de cero y
va aumentando de uno en uno
es decir víctor tiene el índice cero
iris 1 elisabeth 2 y yo el 3 si por
ejemplo quisiera imprimir el valor de
víctor con lo que tendría que hacer es
acá pasarle el índice 0 y ahora vengo y
actualizó aparece acá víctor por acá lo
podría concatenar con un saldo de línea
si quisiera imprimir el otro nombre acá
lo cambio por el valor de 1 vengo
actualizo y aparece el valor de iris
pero imagina la siguiente imagina que
nosotros queramos imprimir todos los
nombres pero no sabemos exactamente
cuántos nombres tengamos almacenado en
nuestra raíz o peor aún que si sepamos
cuántos valores tiene esa raíz pero es
un número muy grande imaginemos que
tengamos 1000 valores no vamos a estar
imprimiendo hecho nombre cero hecho
nombre uno así mil veces entonces para
esas ocasiones podemos utilizar el bucle
for each el bucle for each nos va a
permitir ir integrando uno a uno los
valores que tenga un array de la
siguiente manera vamos a escribir acá la
estructura foris y acá tenemos que
pasarle dos parámetros el primer
parámetro que deberíamos pasarle es el
valor de la raíz que queramos y terán y
el segundo valor que deberíamos pasarle
es el valor de alguna variable donde
queramos que almacene temporalmente cada
uno de estos valores que tenemos acá por
ejemplo yo lo voy a almacenar
temporalmente en una variable llamada
nombre ahora
para imprimir cada uno de estos nombres
lo que tendría que hacer es poner un
hecho y simplemente imprimir lo que
tengamos almacenado en la variable
nombre ya que es aquí donde estamos
rescatando cada uno de estos valores y
al final lo concatenó claro con un salto
de línea
y ahora vamos a ver lo que tenemos
actualizamos ya que aparece víctor y
dice elizabeth yo él
y como pueden ver en ningún momento
hemos hecho referencia al índice para
poder imprimir esos nombres ahora puede
que nosotros necesitamos saber el índice
porque la lógica de nuestro programa así
lo requiere como podríamos rescatar el
índice en el cual se encontraba por
ejemplo el valor de víctor si
necesitamos recuperar ese índice lo que
tenemos que hacer es lo siguiente acá
poner otra variable por ejemplo una
variable llamada key para que sea más
descriptivo le podríamos llamar a esta
variable índice si nosotros hacemos esto
actualizamos vemos que todo sigue
funcionando correctamente pero en esta
variable en la variable índice ha
quedado almacenado el índice en el cual
se encontraba estos elementos por
ejemplo puedo imprimir el nombre de cada
uno de ellos concatenado con lo
siguiente
se encontraba en el índice y vamos a
imprimir lo que tenemos almacenado en la
variable índice esto lo vamos a colocar
así entonces va a imprimir víctor se
encontraba en el índice 0 y se
encontraba en el índice 1 y así
sucesivamente vamos a actualizar y
justamente es lo que me sale víctor se
encontraba en el índice 0 ir y se
encontraba en el índice 1
elisabeth se encontraba en el índice 2 y
joel se encontraba en el índice 3 y con
eso terminamos con las estructuras
algorítmicas repetitivas y en el próximo
capítulo vamos a ver un tema un poco
interesante y se trata de cómo podríamos
interrumpir el flujo de un bucle en el
caso de que llegase a cumplir una
determinada condición sin más me despido
y nos vemos en el próximo capítulo
関連動画をさらに表示
13 - BREAK Y CONTINUE en PHP - Curso PHP 8 desde cero (Actualizado)
Intro to While Loops | Computer Programming | Khan Academy
Tutorial PHP - 9. Bucle Do While
15 - Definir funciones en PHP - Curso PHP 8 desde cero (Actualizado)
14.4 - Argumentos fijos y argumentos variables de una función PHP - Curso PHP 8 desde cero
Aprende a programar desde cero con PseInt! | Comando Mientras | Parte 12
5.0 / 5 (0 votes)