No tienes acceso a esta clase

隆Contin煤a aprendiendo! 脷nete y comienza a potenciar tu carrera

Reto 6: algoritmos con ciclos

11/17
Recursos

Para entender un poco m谩s el uso de ciclos, resolvamos los siguientes problemas, de esta manera identificar谩s c贸mo utilizarlos.

Algoritmo de generaci贸n de n煤meros con el ciclo for

El algoritmo consiste en generar los n煤meros del 1 al 10, utilizamos un bucle for porque conocemos el n煤mero de ciclos para resolver el problema.

Para realizar un bucle for necesitaremos lo siguiente:

  • Inicio: inicializamos una variable con el valor de 1, generalmente se utiliza i (铆ndice) como variable para el bucle, pero no es obligatorio. En este caso utilizaremos num.
  • Condici贸n: la condici贸n ser谩 mientras sea menor o igual que 10 (num <= 10),
  • Pasos: debemos aumentar la variable en una unidad, por lo tanto, podemos utilizar num = num +1.

La estructura es la siguiente:

for (num = 1; num <= 10; num = num + 1) 
    Mostrar num

Esto se leer铆a como: "Para (for) la variable num que inicia en 1 (num = 1) mientras sea menor o igual que 10 (num <= 10) en pasos de 1 (num = num + 1) muestra la variable num".

Mira la siguiente tabla que muestra c贸mo cambia la variable num en cada ciclo.

# Ciclo num num <= 10 num + 1
1.潞 1 true 2
2.潞 2 true 3
10.潞 10 true 11
11.潞 11 false Termina el bucle

Ten en cuenta que el aumento de la variable num ocurre al final de cada ciclo, este valor se compara con la condici贸n. Al momento que la variable num no cumple con la condici贸n del for (num <= 10), termina el bucle y sigue con las siguientes l铆neas del algoritmo correspondiente.

Algoritmo de control de variables con el bucle while

El siguiente algoritmo consiste en controlar que un usuario ingrese una edad mayor de 18. Entonces utilizamos while debido a que no conocemos cu谩ntas veces se equivocar谩 el usuario.

Se utiliza la condici贸n contraria a la solicitada, porque es lo que controlaremos, al cambiar la variable edad evitamos el ciclo infinito.

Si cumple con la condici贸n del while, volveremos a solicitar un valor correcto de edad.

"Ingrese su edad"
edad = __

while edad < 18
  "Ingrese un valor correcto: "
  edad = __

Mira la siguiente tabla que muestra c贸mo cambia la variable edad en cada ciclo.

# Ciclo edad edad < 18 Nueva edad
1.潞 9 true 15
2.潞 15 true 21
3.潞 21 false Termina el bucle

Algoritmo de control de variables con el bucle do-while

El mismo ejemplo del ciclo while, sin embargo, no iniciamos una variable edad fuera del ciclo. Con el ciclo do-while realizamos un bloque de c贸digo y preguntamos una condici贸n, si es verdadera, repite el c贸digo.

Se utiliza la condici贸n contraria a la solicitada, porque es lo que controlaremos, al cambiar la variable edad evitamos el ciclo infinito.

Si cumple con la condici贸n del while, volveremos a solicitar un valor correcto de edad.

do
    "Ingrese su edad"
    edad = __
while edad < 18

Mira la siguiente tabla que muestra c贸mo cambia la variable edad en cada ciclo.

# Ciclo edad edad < 18 Estado
do 11 true Repite el do
1.潞 9 true Repite el do
2.潞 15 true Repite el do
3.潞 21 false Termina el bucle

Contribuci贸n creada por Andr茅s Guano (Platzi Contributor).

Aportes 173

Preguntas 16

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad?

o inicia sesi贸n.

Me entusiasm茅 e hice un diagrama de flujo de un combate Pok茅mon bien loco 馃槄. Creo que es una buena forma de ver el tema de los ciclos.

Ac谩 le met铆 m谩s cosas y mejor par茅 porque sino no acababa nunca 馃槀

Prueben a usar Raptor o PSeInt para ver c贸mo funcionan sus diagramas en tiempo real. Si reci茅n est谩n empezando, es una forma divertida de aprender 馃憤

Este curso es para principiantes pero leo muchos comentarios de personas de un nivel bueno que comprenden y manejan programas, genial. Las clases ser铆an mejor si se demuestran, despu茅s de leer parece que se usara el programa PSeint, igual toca leer y practicar pero se queda corto creo YO con la pizarra, si sabes se entiende, de lo contrario toca buscar para comprender, quizas este mal, pero para principiante que soy me queda un poco incomodo 鈥 Comentario que preferiria no escribir

let edades=[5,10,20,18];

for(i=0;i<4;i++){
    if(edades[i]>=18){
        console.log('es mayor de edad');
    }else{
        console.log('es menor de edad');
    }
}
console.log('---------------------while-------------------');
let n=0;
while(n<4){
    if(edades[n]>=18){
        console.log('es mayor de edad');
    }else{
        console.log('es menor de edad');
    }  
    n++;
}
console.log('---------------------do-while-------------------');
let r=0;
do{
    if(edades[r]>=18){
        console.log('es mayor de edad');
    }else{
        console.log('es menor de edad');
    }  
    r++; 
}while(r<4);

Aqu铆 hic茅 el reto propuesto por la Profesora Ana, hecho en javascript, utilizando los ciclos for, while y do-while.

arrayEdades = [5,10,20,18];
posicion = 0;
posiciondo = 0;

//ciclo for

for (i = 0; i < 4; i++) {
    if (arrayEdades[i] >= 18) {
        console.log("Es mayor de edad");

    }else{
        console.log("No es mayor de edad");
    }
}

//ciclo while

while(posicion <= 3){

    if (arrayEdades[posicion] >= 18) {
        console.log("Es mayor de edad");

    }else{
        console.log("No es mayor de edad");
    }
    posicion = posicion + 1;

}

//ciclo do - while


do {
    if (arrayEdades[posiciondo] >= 18) {
        console.log("Es mayor de edad");
    
    }else{
        console.log("No es mayor de edad");
    }
    posiciondo = posiciondo + 1;

} while (posiciondo <= 3);

Ciclo de reloj con for, while y do-while

Confieso que esta clase fue no fue muy clara para m铆, y no ayuda la lectura de los aportes, ya que la mayor铆a coloca cosas avanzadas como para el nivel del curso.

SE ME OCURRIO DARLE 鈥淔IN鈥 USANDO UN RELOJ A CUERDA

AL RETRASAR 3 MINUTOS POR MES, PIDE QUE LE DES CUERDA CADA 28 D脥AS (IF DIAS = 28) FINALIZANDO LOS CICLOS DE MINUTOS, HORAS Y D脥AS.

CON UN ARRAYS SIMPLE FISICO Y CIRCULA.

Lo hab铆a intentado cuando puso el reto con el ciclo while, pero no me funciono, dure como 1 hora tratando, con for me tomo como 10 minutos y porque la ejecuci贸n toma tiempo
FOR es un exito 馃槂

Mi aporte en Python


edades=[18,19,20,13,12,51]

for edad in edades:
	if edad>=18:
		print(str(edad) + " " + 'Eres mayor de edad')
	else:
		print(str(edad) + " " + 'Lo siento, a煤n eres menor de edad')
 

Lo cual nos da el siguiente resultado

Desde hace un par de semanas me he sentido atascada en el m贸dulo de Diego de Granda en el curso de programaci贸n b谩sica. Decid铆 iniciar la trilog铆a de pensamiento l贸gico y creo que me ha ayudado a desbloquearme. 隆Por fin le entend铆 a los arrays! Y a otras cosas que hac铆a en el c贸digo pero no entend铆a del todo por qu茅. 馃槂

Comparto mis ejercicios utilizando for, while y Do while

Ciclo For:

while:

Do while:

me siento mas perdido que cuando empece.

Hice estos ejercicios en VSC, me bas茅 parte de como poner el algoritmo en google y otra parte por los comentarios de los compa帽eros. Espero les ayude y tambi茅n si hay feedback se los agradecer铆a.

ejemplo de ciclo for en python

Los temas realmente fueron claros y no es un curso de programaci贸n sino de entendimiento de la l贸gica de como funcionan.
Considero que falto mejores ejemplos para entender la diferencia especialmente entre while y do-while.
Soy nuevo y no veo un claro ejemplo de 鈥淎qui deber铆as usar do-while y no while por esta razon鈥 Hasta Chat GPT dio ejemplos que no usuaria en la vida real.
Me quedo con que 鈥渄o-while鈥 es para si quieres ejecutar por lo menos una vez la instrucci贸n sin depender del condicional, mientras que el while va a ignorar la instrucci贸n si el condicional no cumple.

Ejemplo: 驴Puedo entrar a este juego mec谩nico?

  • Ciclo For
let estaturas = [1.80, 1.66, 1.75]

for ( i=0; i<=2; i++)
if(estaturas[i]>=1.70{
        console.log("Puedes entrar");
    }else{
        console.log("No puedes entrar");
    }
}
  • Ciclo While
let estaturas = [1.80, 1.66, 1.75]
let i=0;
while(n<=2){
    if(estaturas[i]>=1.70){
         console.log("Puedes entrar");
    }else{
        console.log("No puedes entrar");
    }  
    i++;
}
  • Ciclo Do While
let estaturas = [1.80, 1.66, 1.75]
let r=0;
do{
    if(estaturas[i]>=1.70){
         console.log("Puedes entrar");
    }else{
        console.log("No puedes entrar");
    }  
    i++; 
}while (i<=2)

Complemento programaci贸n javascript:
https://www.freecodecamp.org/espanol/news/javascript-bucles-explicados-for-while-loops/

Aunque la clase cuenta con una buena explicaci贸n creo que se deber铆a profundizar de manera m谩s concreta en crear algoritmos por medio de distintos lenguajes de programaci贸n.

Ciclo for: Se usa cuando se tienen determinadas la cantidad de iteraciones.
Ciclo While: Se usa cuando se quiere poner una condici贸n determinada que determinadas iteraciones del ciclo, con la cual se ejecuta el funcionamiento.
Ciclo do While: Se usa cuando se requiere que se ejecute la funci贸n y posteriormente se determine la condici贸n que determina las iteraciones del ciclo.

Me parece, que la explicaci贸n se queda corta solo en lo te贸rico, no se recomienda ninguna herramienta para aprender a ejecutar estos diagramas y aprender a corregir, que seria lo ideal.

esto no s贸lo se ve en programaci贸n lo ver谩n en por ejemolo algub curso de corriente alterna, al meter un osiloscopio veran una gr谩fica senoidal que se ejecutar谩 60 veces por segundo en un periodo de tiempo infinito, al checar algun caoacitor dependoendo si frecuencia sera la cantidad de ciclos que ver谩n en el osiloscopio, o cuando han visto en las pel铆culad que hay un aparatito que est graficando los latidos de tu coraz贸n 鉂 el punto es que es muy importante entender la l贸gica de como funciona todo, como este mendaje de texto que estoy dejando por medio de un lenguaje de programacion se convierte en 010101010101 que no son mas que pulsos el茅ctricos para que mi celular los mande atravez del aire pero no los puede mandar as铆, antes de eso ocupa pasr por un transductor que los convertira frecuencia de 2.4ghz para que los reciba mi modem de ISP (Totalplay) el cual los vuelve a convertir a 101001101 y despues los convierte a luz (fibra 贸ptica) etc, etc. todo eso lleva ciclos, condicionales y un sin fin de variables l贸gicas.

Es interesante la forma en que se usan los ciclos en la programacion. En mi caso, sabia usar el 鈥渇or鈥 pero el 鈥渨hile鈥 y el 鈥渄o-while鈥 me dejo en shock porque no sabia que se debe usar con pocisiones de un listado. Esta bien en unos ejemplos. Me gustaria saber como se implementaria con una BD. Por cierto aqui esta mi reto:

let listita = [12,9,45,67]
let pocisionInicial = 0
let pocisionFinal = 0

//Ciclo FOR
for (let i = 0; i < listita.length; i++) {
    if (listita[i] <= 18) {
        console.log("Es un menor de Edad")
    } else {
        console.log("Es un mayor de Edad")
    }
    
}

//Ciclo While
while (pocisionInicial <= 3) {
    if (listita[pocisionInicial] <= 18) {
        console.log("Eres un menor de Edad")
    } else {
        console.log("Eres un mayor de Edad")
    }
    pocisionInicial = pocisionInicial + 1
}

//Ciclo Do-While
do {
    if (listita[pocisionFinal] <= 18) {
        console.log("Es usted un menor de Edad")
    } else {
        console.log("Es un mayor de edad")
    }
    pocisionFinal = pocisionFinal + 1

} while (listita[pocisionFinal] <= 3)

Hola estos son mis aportes igual y ayuda a alguien a entender mejor.

<let edad = [5,10,20,16,13,18];

for (i = 0; i<5;i++){
    if (edad[i] >= 18){
        alert ("ya eres mayor de edad")}
        else ("aun eres menor de edad")
    };
//inicio en la posicon 0
let i = 0;

//ciclo While

while (i < 5) {
  if (edad[i] >= 18) {
    alert("ya eres mayor de edad");
  } else {
   alert("aun eres menor de edad");
  }
  i++;
}

//ciclo Do While
do {
     if (edad[i] >= 18) {
       alert("ya eres mayor de edad");
     } else {
       alert("aun eres menor de edad");
     }
  i++;
} while (i <= 5);> 
<code> 
let nombre=["frank","Beyseth","Juanita","Diana","Luis"]
let edades=[21,19,9,25,15]
for(let i=0;i<nombre.length;i++){
  if(edades[i]>18){
    console.log(nombre[i]+" Tiene "+edades[i]+" a帽os es mayor")
  }
  else{
     console.log(nombre[i]+" Tiene "+edades[i]+" a帽os es menor")
  }
}

*****************While************************
let nombre=["frank","Beyseth","Juanita","Diana","Luis"]
let edades=[21,19,9,25,15]
let n=0;
while(n<nombre.length){
  if(edades[n]>=18){
    console.log(nombre[n]+" Es mayor de edad")
  }
  else{
    console.log(nombre[n]+ " Es menor de edad")
  }
  n++
}
  
**********************Do while*************************
let nombre=["frank","Beyseth","Juanita","Diana","Luis"]
let edades=[21,19,9,25,15]
let k=0

// ejecuta primero la condicion , haz esto primero
do{
  if(edades[k]>=18){
    console.log(nombre[k]+" Es mayor de edad")
  }
  else{
    console.log(nombre[k]+" Es menor de edad")
  }
  k++
}
// valida la candidad de iteraciones ,luego valida si tengo que seguir iterando
while(k<nombre.length)

// Code in TypeScript
// ----------------------------------------------
let edades: number[] = [12, 18, 20, 30, 40, 50, 60, 70, 80, 90, 100];
edades.forEach((edad) => {
  let esMayorDeEdad = edad >= 18 ? "Es mayor de edad" : "No es mayor de edad";
  console.log(esMayorDeEdad);
});
// ----------------------------------------------
edades = [12, 7, 23, 19]

for i in edades:
	if i >= 18:
		print("es mayor de edad")
	else:
		print("no es mayor de edad")
let edades =[10, 30, 28, 50, 17, 29];
i= 0
while(i < 5){
     (edades[i] > 18) ? alert("Eres Mayor de edad " + edades[i]) :  alert("Eres menor de edad " + edades[i]);
            i++
 }

Do 鈥楶reparar caf茅鈥

While 鈥榩roceso toda la informaci贸n鈥

Ejemplo hehco en python

En c贸digo se ver铆a asi:

let edades = [5,40,20,18]

for(let i= 0; i < edades.length; i++){
    if (edades[i] >=18){
        console.log(`si tiene ${edades[i]} Eres mayor de edad`)
    }else{
        console.log(`si tiene ${edades[i]} Eres menor de edad`)
    }
}

//output:
si tiene 5 Eres menor de edad
si tiene 40 Eres mayor de edad
si tiene 20 Eres mayor de edad
si tiene 18 Eres mayor de edad

Esto se me ocurri贸 en python para las edades mezclando un for y if/else

馃捇馃枼 Practicando lo visto

Usando estructuras de control optimamente(Solo ciclos)!

  1. For:

  2. Do While:

En Pseint

Algoritmo para encontrar el numero mayor de 3 numeros:

Algoritmo NumMayorde3
	Definir num1, num2, num3 Como Entero
	Escribir "Ingrese primer numero"
	Leer num1
	Escribir "Ingrese segundo numero"
	Leer num2
	Escribir "Ingrese tercer numero"
	Leer num3
		
	si (num1>=num2 y num1>num3) Entonces
		Escribir "El numero mayor es: ",num1	
	SiNo
		si (num2>num1 y num2>=num3) Entonces
			Escribir "El numero mayor es: ", num2
		SiNo
			si (Num3>=num1 y num3>num2) Entonces
				Escribir "El numero mayor es: ",num3
			SiNo
				Escribir "Los numeros son iguales: ",num1," = ",num2," = ",num3
			FinSi
		FinSi
	FinSi
FinAlgoritmo

Algoritmo para determinar si es mayor de edad

Algoritmo ArregloMayor18
	Definir i, j, n Como Entero
	j=0
	n=5
	Dimension may18(n)
	Escribir "Ingresar edades" 
	para i=0 Hasta n-1 Con Paso 1 Hacer
		Mientras i>=j Hacer
			Leer may18(i)
			j=j+1
			si (may18(i)>=18) Entonces
				Escribir "Eres mayor de edad" 
				Esperar Tecla
				Limpiar Pantalla
			SiNo
				Escribir "Eres menor de edad" 
				Esperar Tecla
				Limpiar Pantalla
			FinSi
		FinMientras
	FinPara	
FinAlgoritmo

馃捇馃枼 隆Resolviendo el reto!

1) Haz un ejemplo usando cada ciclo y explica por qu茅 es usarlo en ese caso es lo 贸ptimo!

  1. For:
  2. Do while:
  3. While do:

(En estos dos 煤ltimos casos considero mejor usar 鈥淲hile do鈥, ya que te ahorras poner un if; Ahorras tiempo y memoria)

Exercise: Pedir 3 numeros entreros con cualquier cantidad de digitos y determinar cuantos de estos numeros tiene menos de 3 digitos.

Ejercicio para saber el tipo de dato del array.


array = ['hola', 5, 6.12, 'c', 7, true]

for (i = 0 ; i <=array.tama帽o = i++){
    'sabras el tipo de dato que es cada valor'
    tipo(array[i]);
    i++
}

cambiar un poco la informaci贸n de acuerdo al lenguaje que se use.

![](https://static.platzi.com/media/user_upload/image-2d104edf-b2d9-400c-8312-5977e91948e8.jpg)
![](https://static.platzi.com/media/user_upload/image-431d1b77-91db-45ab-934a-e0b609cdd354.jpg)
 int[] edades = {12,14,22,13,34,2,44};
        
      for(int i = 0; i<edades.length;i++){
      int numP = i+1;
      if(edades[i]>=18){
          System.out.println(numP + " es mayor de edad");
      
      }else{
      System.out.println(numP+ " es menor de edad");
      }
      
      }
     System.out.println("--------------------------------------");
     
           
      int j = 0;
      
      while(j<edades.length){
      if(edades[j]>=18){
          System.out.println("es mayor");
      }else{
          System.out.println("es menor");
      }
      j++;
      }
      
      
       System.out.println("--------------------------------------");
      
      int k = 0;
      
      do{
      if(edades[k]>=18){
          System.out.println("mayor");
      
      }else{
          System.out.println("menor");
      }
      k++;
      }while(k<edades.length);
       
Este curso debe tomarlo una persona que ya tenga idea de prograaci贸b? Veo en los comentarios muchos con sus diagramas y me doy cuenta que estoy en pa帽ales, ni idea y me cuesta entender todo esto.

Es gracioso por que deberia preguntar si tiene pila en cada instante, pero seria mas tedioso agregar una vuelta para esto cada segundo. Entonces la solucion es sencilla 馃槂

Algoritmo de generaci贸n de n煤meros con el ciclo for

El objetivo de este algoritmo es generar los n煤meros del 1 al 10. Utilizamos un bucle for porque conocemos el n煤mero de ciclos necesarios para resolver el problema.

Para lograr esto, necesitamos:

  • Inicio: Inicializamos una variable, en este caso, la llamaremos num, con el valor 1.
  • Condici贸n: Establecemos la condici贸n de que el bucle se ejecute mientras num sea menor o igual a 10 (num <= 10).
  • Pasos: Incrementamos la variable num en una unidad en cada ciclo (num = num + 1).

La estructura del ciclo for es la siguiente:

for (num = 1; num <= 10; num = num + 1)
    Mostrar num

Esto se lee como: "Para la variable num que comienza en 1, mientras num sea menor o igual a 10, incrementa num en 1 y muestra el valor de num".

Algoritmo de control de variables con el bucle while

Este algoritmo se utiliza para controlar que un usuario ingrese una edad mayor de 18 a帽os. Se emplea un ciclo while porque no conocemos cu谩ntas veces el usuario puede equivocarse al ingresar la edad.

En lugar de controlar directamente la condici贸n requerida (edad >= 18), controlamos la condici贸n contraria (edad < 18) para determinar cu谩ndo detener el bucle. Se solicita al usuario que ingrese su edad, y si la edad ingresada es menor de 18, se le pide que vuelva a ingresar un valor v谩lido.

"Ingrese su edad"
edad = __

while edad < 18
    "Ingrese un valor correcto: "
    edad = __

En resumen, este algoritmo repite la solicitud de edad hasta que el usuario ingrese un valor mayor o igual a 18.

Algoritmo de control de variables con el bucle do-while

El bucle do-while realiza un bloque de c贸digo al menos una vez antes de evaluar la condici贸n. En este caso, nuevamente controlamos que el usuario ingrese una edad mayor de 18 a帽os.

do
    "Ingrese su edad"
    edad = __
while edad < 18

El ciclo se inicia con la solicitud de edad y, si la edad ingresada es menor de 18, se le pide al usuario que vuelva a ingresar un valor v谩lido. Este proceso se repetir谩 hasta que el usuario finalmente ingrese una edad v谩lida.

Estas estructuras de bucle son esenciales en la programaci贸n y permiten controlar eficazmente el flujo de ejecuci贸n de un programa.

Apuntes

驴Qu茅 es un dato?

En inform谩tica, un dato es cualquier informaci贸n que puede ser almacenada y procesada por un programa de computadora. Los datos pueden tomar muchas formas diferentes, desde texto y n煤meros hasta im谩genes y sonidos. En general, se considera que los datos son la materia prima con la que trabajan los programas de computadora.

Tipos de datos

Existen varios tipos de datos que se utilizan en programaci贸n, entre los que destacan:

  • Datos de texto: se refieren a cadenas de caracteres que representan palabras, frases, oraciones, etc. Los datos de texto se utilizan ampliamente en aplicaciones como procesadores de texto, correo electr贸nico y redes sociales.
  • Datos num茅ricos: se refieren a valores que representan n煤meros, ya sean enteros o decimales. Estos datos se utilizan en una amplia variedad de aplicaciones, desde c谩lculos matem谩ticos hasta simulaciones cient铆ficas y financieras.
  • Datos booleanos: se refieren a valores que pueden ser verdaderos o falsos. Estos datos se utilizan ampliamente en aplicaciones que requieren toma de decisiones, como la programaci贸n de juegos y sistemas de votaci贸n en l铆nea.
  • Arrays: como se mencion贸 anteriormente, los arrays son estructuras de datos que permiten almacenar una colecci贸n de elementos del mismo tipo en una 煤nica variable. Los arrays son muy utilizados en programaci贸n para almacenar y manipular grandes cantidades de datos de manera eficiente.

Ejemplo de algoritmo de un reloj

A continuaci贸n, se presenta un ejemplo de un algoritmo para mostrar la hora actual en un reloj digital:

  1. Obtener la hora actual del sistema.
  2. Convertir la hora actual a un formato de 24 horas.
  3. Dividir la hora actual en horas, minutos y segundos.
  4. Mostrar las horas, minutos y segundos en un formato de reloj digital.
  5. Esperar un segundo.
  6. Repetir el paso 1.

Este algoritmo utiliza datos num茅ricos para representar las horas, minutos y segundos, as铆 como datos de texto para representar el formato del reloj digital. Adem谩s, utiliza un bucle para repetir continuamente la obtenci贸n y muestra de la hora actual.

驴Qu茅 son las estructuras de control?

Las estructuras de control son instrucciones o bloques de c贸digo que permiten modificar el flujo de ejecuci贸n de un programa de computadora. Es decir, son herramientas que permiten controlar el orden en que se ejecutan las instrucciones del programa, permitiendo tomar decisiones, realizar repeticiones y ejecutar acciones condicionales.

Las estructuras de control son fundamentales en la programaci贸n, ya que permiten escribir programas m谩s complejos y sofisticados que pueden tomar decisiones y realizar acciones de manera aut贸noma. Adem谩s, el uso adecuado de las estructuras de control puede mejorar la eficiencia y eficacia del programa al reducir el n煤mero de instrucciones innecesarias y repetitivas.

Existen tres tipos principales de estructuras de control:

Estructuras condicionales

Las estructuras condicionales permiten tomar decisiones en funci贸n del resultado de una o varias condiciones. La estructura condicional m谩s com煤n es el 鈥渋f鈥 o 鈥渟i鈥 en espa帽ol, que ejecuta una instrucci贸n o bloque de c贸digo solo si se cumple una condici贸n. Tambi茅n existen otras estructuras condicionales como 鈥渆lse鈥 o 鈥渟ino鈥 en espa帽ol, que se ejecutan en caso contrario a la condici贸n establecida en el 鈥渋f鈥, y 鈥渆lse if鈥 o 鈥渟ino si鈥 en espa帽ol, que permiten establecer varias condiciones consecutivas para tomar decisiones m谩s complejas.

Estructuras de repetici贸n

Las estructuras de repetici贸n permiten ejecutar una o varias instrucciones varias veces en funci贸n de una condici贸n. Las estructuras de repetici贸n m谩s comunes son el 鈥渇or鈥 y el 鈥渨hile鈥 en los que se establece una condici贸n y se ejecutan las instrucciones dentro de un bloque de c贸digo hasta que se cumpla o se deje de cumplir dicha condici贸n. Estas estructuras son especialmente 煤tiles cuando se necesitan realizar operaciones repetitivas con datos.

Estructuras de control de excepciones

Las estructuras de control de excepciones permiten manejar errores o situaciones excepcionales en la ejecuci贸n del programa. Las estructuras de control de excepciones m谩s comunes son el 鈥渢ry-catch鈥 o 鈥渋ntenta-captura鈥 en espa帽ol, que intentan ejecutar una instrucci贸n y, si se produce una excepci贸n o error, se ejecuta un bloque de c贸digo para manejar la situaci贸n. Estas estructuras son muy 煤tiles para evitar que los programas se detengan por completo debido a errores inesperados y para manejar errores de manera eficiente.

Estructuras condicionales

Las estructuras condicionales son aquellas que permiten tomar decisiones en funci贸n del resultado de una o varias condiciones. En la programaci贸n, la estructura condicional m谩s com煤n es el 鈥渋f鈥 o 鈥渟i鈥 en espa帽ol, que ejecuta una instrucci贸n o bloque de c贸digo solo si se cumple una condici贸n.

La sintaxis b谩sica de la estructura condicional 鈥渋f鈥 es la siguiente:


if condici贸n:
    instrucci贸n(es)

Donde 鈥渃ondici贸n鈥 es una expresi贸n booleana que eval煤a si se cumple o no una determinada condici贸n, y 鈥渋nstrucci贸n(es)鈥 es una o varias instrucciones que se ejecutar谩n si se cumple la condici贸n.

Tambi茅n existen otras estructuras condicionales, como el 鈥渆lse鈥 o 鈥渟ino鈥 en espa帽ol, que se ejecutan en caso contrario a la condici贸n establecida en el 鈥渋f鈥. La sintaxis b谩sica de la estructura condicional 鈥渋f-else鈥 es la siguiente:


if condici贸n:
    instrucci贸n(es) si se cumple la condici贸n
else:
    instrucci贸n(es) si no se cumple la condici贸n

Adem谩s, existe el 鈥渆lse if鈥 o 鈥渟ino si鈥 en espa帽ol, que permite establecer varias condiciones consecutivas para tomar decisiones m谩s complejas. La sintaxis b谩sica de la estructura condicional 鈥渋f-else if-else鈥 es la siguiente:


if condici贸n1:
    instrucci贸n(es) si se cumple la condici贸n1
elif condici贸n2:
    instrucci贸n(es) si se cumple la condici贸n2
else:
    instrucci贸n(es) si no se cumple ninguna de las condiciones anteriores

Las estructuras condicionales son fundamentales en la programaci贸n, ya que permiten que los programas tomen decisiones de manera aut贸noma y ejecuten instrucciones espec铆ficas en funci贸n de las condiciones establecidas. En general, las estructuras condicionales se utilizan para hacer que el programa sea m谩s inteligente y eficiente en la toma de decisiones, lo que a su vez mejora la experiencia del usuario final.

Algoritmos con variables y condicionales

Los algoritmos con variables y condicionales son aquellos que utilizan variables para almacenar valores y estructuras condicionales para tomar decisiones en funci贸n de esos valores. Estos algoritmos son muy 煤tiles para resolver problemas complejos en la programaci贸n.

A continuaci贸n se presenta un ejemplo de algoritmo con variables y condicionales, que simula el funcionamiento de un sem谩foro:

markdownCopy code
1. Iniciar variable color en "verde"
2. Iniciar variable tiempo en 0
3. Mientras tiempo < 60:
4.     Si color es "verde":
5.         Imprimir "Semaforo en verde"
6.         Incrementar tiempo en 1
7.         Si tiempo >= 60:
8.             Terminar el algoritmo
9.         Si tiempo >= 30:
10.            Cambiar color a "amarillo"
11.    Si color es "amarillo":
12.        Imprimir "Semaforo en amarillo"
13.        Incrementar tiempo en 1
14.        Si tiempo >= 60:
15.            Terminar el algoritmo
16.        Si tiempo >= 45:
17.            Cambiar color a "rojo"
18.    Si color es "rojo":
19.        Imprimir "Semaforo en rojo"
20.        Incrementar tiempo en 1
21.        Si tiempo >= 60:
22.            Terminar el algoritmo
23.        Si tiempo >= 55:
24.            Cambiar color a "verde"

En este algoritmo, se utilizan dos variables: 鈥渃olor鈥, que representa el color actual del sem谩foro, y 鈥渢iempo鈥, que representa el tiempo transcurrido desde que el sem谩foro se puso en verde. El algoritmo inicia con el sem谩foro en verde y el tiempo en 0, y se ejecuta en un ciclo mientras el tiempo sea menor a 60 segundos. En cada iteraci贸n del ciclo, se verifica el color actual del sem谩foro y se imprimen mensajes correspondientes en funci贸n de ese color. Adem谩s, se incrementa el tiempo en 1 segundo en cada iteraci贸n y se cambia el color del sem谩foro si se cumplen ciertas condiciones (por ejemplo, cambiar a amarillo despu茅s de 30 segundos en verde, y a rojo despu茅s de 45 segundos en amarillo). Finalmente, cuando el tiempo llega a 60 segundos, el algoritmo termina.

Este ejemplo muestra c贸mo se pueden utilizar variables y estructuras condicionales para simular un proceso complejo en un programa, lo que puede ser muy 煤til en situaciones reales.

Ciclos

Los ciclos son estructuras de control en programaci贸n que permiten ejecutar una serie de instrucciones repetidamente mientras se cumple una condici贸n determinada. Los ciclos son 煤tiles para procesar grandes cantidades de datos, realizar operaciones matem谩ticas complejas o simplemente para automatizar tareas repetitivas.

Existen dos tipos principales de ciclos en programaci贸n: el ciclo 鈥渨hile鈥 y el ciclo 鈥渇or鈥.

Ciclo while

El ciclo 鈥渨hile鈥 ejecuta una serie de instrucciones repetidamente mientras se cumpla una condici贸n determinada. La sintaxis b谩sica de un ciclo while es la siguiente:


while condici贸n:
    instrucciones

El ciclo while eval煤a la condici贸n al inicio de cada iteraci贸n. Si la condici贸n se cumple, se ejecutan las instrucciones dentro del ciclo. Despu茅s de ejecutar las instrucciones, el ciclo vuelve a evaluar la condici贸n y, si se cumple, se repite el proceso. El ciclo termina cuando la condici贸n no se cumple m谩s.

A continuaci贸n, se presenta un ejemplo de ciclo while que suma los primeros 10 n煤meros naturales:


suma = 0
i = 1

while i <= 10:
    suma += i
    i += 1

print("La suma de los primeros 10 n煤meros naturales es:", suma)

En este ejemplo, el ciclo while se repite mientras la variable 鈥渋鈥 sea menor o igual a 10. En cada iteraci贸n, se suma el valor de 鈥渋鈥 a la variable 鈥渟uma鈥, y se incrementa el valor de 鈥渋鈥 en 1. Despu茅s de que el ciclo termina, se imprime el valor final de la variable 鈥渟uma鈥.

Ciclo for

El ciclo 鈥渇or鈥 es una estructura de control que permite iterar sobre una secuencia de elementos (como una lista o una cadena de caracteres) y ejecutar una serie de instrucciones para cada elemento de la secuencia. La sintaxis b谩sica de un ciclo for es la siguiente:


for variable in secuencia:
    instrucciones

En cada iteraci贸n del ciclo for, la variable 鈥渧ariable鈥 toma el valor de uno de los elementos de la secuencia y se ejecutan las instrucciones dentro del ciclo. Despu茅s de ejecutar las instrucciones, el ciclo avanza al siguiente elemento de la secuencia y repite el proceso hasta que se han procesado todos los elementos.

A continuaci贸n, se presenta un ejemplo de ciclo for que imprime los elementos de una lista de frutas:


frutas = ["manzana", "banana", "kiwi", "naranja"]

for fruta in frutas:
    print(fruta)

En este ejemplo, el ciclo for itera sobre la lista de frutas y en cada iteraci贸n, la variable 鈥渇ruta鈥 toma el valor de uno de los elementos de la lista y se imprime en la consola.

En resumen, los ciclos son estructuras de control en programaci贸n que permiten repetir una serie de instrucciones mientras se cumple una condici贸n determinada. Los ciclos 鈥渨hile鈥 y 鈥渇or鈥 son los tipos principales de ciclos en programaci贸n y son 煤tiles para procesar grandes cantidades de datos y automatizar tareas repetitivas.

Algoritmos con ciclos

Aqu铆 hay algunos ejemplos de algoritmos que utilizan ciclos:

  1. Suma de n煤meros: Este algoritmo pide al usuario un n煤mero n y calcula la suma de todos los n煤meros enteros desde 1 hasta n utilizando un ciclo for.

Inicio
  Leer n
  suma = 0
  Para i desde 1 hasta n hacer
    suma = suma + i
  FinPara
  Mostrar suma
Fin

  1. Factorial de un n煤mero: Este algoritmo pide al usuario un n煤mero n y calcula su factorial utilizando un ciclo while.

Inicio
  Leer n
  factorial = 1
  i = 1
  Mientras i <= n hacer
    factorial = factorial * i
    i = i + 1
  FinMientras
  Mostrar factorial
Fin

  1. Tabla de multiplicar: Este algoritmo pide al usuario un n煤mero n y muestra su tabla de multiplicar del 1 al 10 utilizando un ciclo for anidado.

Inicio
  Leer n
  Para i desde 1 hasta 10 hacer
    producto = n * i
    Mostrar n, " x ", i, " = ", producto
  FinPara
Fin

  1. B煤squeda en una lista: Este algoritmo busca un elemento espec铆fico en una lista y devuelve su 铆ndice utilizando un ciclo for.

Inicio
  lista = [2, 4, 6, 8, 10]
  elemento = 8
  indice = -1
  Para i desde 0 hasta longitud(lista)-1 hacer
    Si lista[i] == elemento entonces
      indice = i
      SalirPara
    FinSi
  FinPara
  Mostrar indice
Fin

Estos son solo algunos ejemplos de algoritmos que utilizan ciclos. Los ciclos son una herramienta poderosa en la programaci贸n que nos permiten automatizar tareas repetitivas y procesar grandes cantidades de datos de manera eficiente.

todos los ciclos se pueden aplicar para todas las condiciones pero para aplicarlos de manera correcta hay que saber para cuando queremos usarlo.

For : Solamente se usa si conocemos la cantidad de registros que debemos procesar dentro de la condici贸n y se deben de procesar todos.

While: solamente se usa si desconocemos la cantidad de registro que debemos procesar y solamente se frena el bucle cuando llega uno que no queremos analizar

Do While: Es como el While con la diferencia que primero procesa y luego pregunta, este a diferencia del while procesa todo los registro incluyendo el ultimo.

//for
for (bater铆a = 0; bater铆a == 100; bater铆a = bater铆a + 1)
{
alert(鈥淐arga al m谩ximo鈥)
}
//While
"Ingrese su nivel de poder"
poder = 400
while poder < 500
"Necesita fortalecerse"
poder = _____
//Do while
vatios = 0
Do
vatios = vatios + 1000
while vatios < 5000

Programa para adivinar un n煤mero en Python:

num = int(input("Dile a alguien que escriba un n煤mero para que adivines: "))
i = int(input("ingrese el n煤mero de intentos que desea: "))
x = int(input("Ingrese un n煤mero : "))
if x == num:
print(鈥淎divinaste a la primera鈥)
else:
print(鈥渧uelve a intentarlo鈥)
for bucle in range(1,i):
z = int(input("Ingrese otro n煤mero: "))
if z==num:
print(鈥渁divinaste鈥)
break
else:
print(鈥渧uelve a intentarlo鈥)

Como recomendaci贸n; a veces es bueno estudiar materias en paralelo, como realizar el curso de pensamiento l贸gico y a su vez ir avanzando con el programa que deseen aprender, sea java, Python, etc.

Definir la matriz de datos

matriz_edades = [5, 10, 20, 18]

Variable para almacenar el 铆ndice actual

indice = 0

Ciclo do-while

while indice < len(matriz_edades):
# Obtener la edad actual
edad_actual = matriz_edades[indice]

# Verificar si la edad es mayor o igual a 18
if edad_actual >= 18:
    print("La persona en el 铆ndice", indice, "es mayor de edad.")
else:
    print("La persona en el 铆ndice", indice, "NO es mayor de edad.")

# Incrementar el 铆ndice para pasar a la siguiente persona
indice += 1

Les recomiendo los videos de absolute y bitboss

var arrayEdades = [5,10,20,18];
var nombre = prompt("Ingresa tu nombre! ");
for( var i = 0; i < arrayEdades.length; i++) {
if (arrayEdades [i] <= 18 ) {
console.log( nombre + " Eres meyor de edad ");
}else {
console.log ( nombre + " Eres menor de edad ");
}
}

Gracias por la clase

Un ejercicio con while

Diagrama de flujo

Pseudoc贸digo

Algoritmo ciclo_sellos
	c = 0
	Dimension sellos[4]
	sellos[0] = 8
	sellos[1] = 16
	sellos[2] = 18
	sellos[3] = 6
	
	Escribir "Para aprobrar debe tener 15 sellos o m谩s"
	Mientras c<=3 Hacer
		
		Si sellos[c] >= 15 Entonces
			Escribir "Tienes " sellos[c] " sellos, felicidades aprobaste"
		SiNo
			Escribir "Tienes " sellos[c] " sellos, no son suficientes desapobraste"
		FinSi
		c = c+1
	FinMientras
FinAlgoritmo

termina en el indice 3 e indica que la edad del sub indice 3 es mayor de edad si el condicional esta >=18

console.log

Sirve para ver en la consola del navegador web el resultado. Si quieren profundizar un poco en la estructura de los datos pueden hacer uso de:

console.count

Este les contara la cantidad de iteraciones y ver internamente la parte logica del algotimo. Ejemplos de console.log() en JavaScript Link

let edades = [5,10,20,18];

for(i=0;i<4;i++) {
    if(edades[i]>=18) {
        console.count("eres mayor"); //conteno del array
    } else {
        console.count("eres menor"); //conteno del array
    }
}
Gracias profe por la explicaci贸n...

Realizar un programa que imprima en pantalla los n煤meros del 0 al 100.

Me encanto la clase, por fin pude entender la funci贸n del FOR, while y Do while (aunque este ultimo no existe en python pero investigando encontre la forma), aqui van los ejemplos en python, porque he visto que la mayoria de las aportaciones es en javascript

edades = [5, 10, 20, 18]
i = 0

for n in edades:
  if n >= 18:
    print("Tu edad es:",n,"y eres mayor de edad")
  else:
    print("Tu edad es:",n,"y eres menor de edad")

while i < len(edades):
  if edades[i] >= 18:
    print("Tu edad es:",edades[i],"y eres mayor de edad")
  else:
    print("Tu edad es:",edades[i],"y eres menor de edad")
  i += 1

while True:
  i += 0
  if edades[i] >= 18:
    print("Tu edad es:",edades[i],"y eres mayor de edad")
    break
  else:
    print("Tu edad es:",edades[i],"y eres menor de edad")
    break
let edades = [5, 10, 20, 18];

for(let i = 0; i < edades.length; i++){
  if(edades[0] >= 18){
    console.log("es mayor")
  }else{
    console.log("es menor")
  }
  if(edades[1] >= 18){
    console.log("es mayor")
  }else{
    console.log("es menor")
  }
  if(edades[2] >= 18){
    console.log("es mayor")
  }else{
    console.log("es menor")
  }
  if(edades[3] >= 18){
    console.log("es mayor")
  }else{
    console.log("es menor")
  }
}

Seria bueno m谩s ejemplos

Ejemplo en JavaScript, tomando aportes de mis compa帽eros.

<code> 
let edades= [5, 10, 20, 18]

//ciclo for

for(n=0; n<3; n++){
    if(edades [n]>=18){
        console.log("Es mayor de edad");
    }
       else{
        console.log("Es menor de edad")
    }
}
   
//ciclo while

let n=0;
while (n<=3){
    if(edades[n]>=18){
        console.log("Es mayor de edad");
    }
    else{
        console.log("Es menor de edad")
    }
}

//ciclo do - while
let n=0;
do {
    if (edades[n]>= 18) {
        console.log("Es mayor de edad");
    
    }else{
        console.log("No es mayor de edad");
    }
    n++;

} while (n<=3);

Les comparto este ejercicio que hice de pr谩ctica

Crear un programa que calcule la tabla de multiplicar de un n煤mero ingresado por el usuario hasta un l铆mite especificado.

https://drive.google.com/file/d/1DtcZcpcXfRjuaby1mfLIVdKL4eDzXsnx/view?usp=sharing

let contador = 0;

do {
  console.log(contador);
  contador++;
} while (contador <= 5);

esto ejecuta 0,1,2,3,4,5
let contador = 0;

while (contador < 5) {
  console.log(contador);
  contador++;

}
for (let i = 0; i < 5; i++) {
  console.log(i);
}

let edad = 18;

if (edad < 18) {
  console.log("Eres menor de edad");
} else {
  console.log("Eres mayor de edad");
}
let dia = "jueves";

switch (dia) {
  case "lunes":
    console.log("Hoy es lunes");
    break;
  case "martes":
    console.log("Hoy es martes");
    break;
  case "mi茅rcoles":
    console.log("Hoy es mi茅rcoles");
    break;
  case "jueves":
    console.log("Hoy es jueves");
    break;
  default:
    console.log("Hoy no es un d铆a v谩lido");
}


vi algunos comentarios y quise aportar mi estilo en un ejemplo, espero les guste, valor el feedback

Algoritmos con ciclos

Aqu铆 hay algunos ejemplos de algoritmos que utilizan ciclos:

  1. Suma de n煤meros: Este algoritmo pide al usuario un n煤mero n y calcula la suma de todos los n煤meros enteros desde 1 hasta n utilizando un ciclo for.

Inicio
  Leer n
  suma = 0
  Para i desde 1 hasta n hacer
    suma = suma + i
  FinPara
  Mostrar suma
Fin

  1. Factorial de un n煤mero: Este algoritmo pide al usuario un n煤mero n y calcula su factorial utilizando un ciclo while.

Inicio
  Leer n
  factorial = 1
  i = 1
  Mientras i <= n hacer
    factorial = factorial * i
    i = i + 1
  FinMientras
  Mostrar factorial
Fin

  1. Tabla de multiplicar: Este algoritmo pide al usuario un n煤mero n y muestra su tabla de multiplicar del 1 al 10 utilizando un ciclo for anidado.

Inicio
  Leer n
  Para i desde 1 hasta 10 hacer
    producto = n * i
    Mostrar n, " x ", i, " = ", producto
  FinPara
Fin

  1. B煤squeda en una lista: Este algoritmo busca un elemento espec铆fico en una lista y devuelve su 铆ndice utilizando un ciclo for.

Inicio
  lista = [2, 4, 6, 8, 10]
  elemento = 8
  indice = -1
  Para i desde 0 hasta longitud(lista)-1 hacer
    Si lista[i] == elemento entonces
      indice = i
      SalirPara
    FinSi
  FinPara
  Mostrar indice
Fin

Estos son solo algunos ejemplos de algoritmos que utilizan ciclos. Los ciclos son una herramienta poderosa en la programaci贸n que nos permiten automatizar tareas repetitivas y procesar grandes cantidades de datos de manera eficiente.

Los ciclos se los puede utilizar para imprimir en pantalla alg煤n dato que est茅 dentro de un array:

for (i=0; i<=n; i++)
imprimir(i)

while (i<=n)
imprimir(i)

do
imprimir(i)
while (i<=n)

ciclo do while

ciclo while

if(edad[i] > 18){
'entra'
}else{
'llamanso bienestar familiar'

Mi practica

/* Ciclos implementados con FOR */
for (let i = 0; i <= 149; i++) {
    console.log('Iteraci贸n: ${i}');
}
console.log('Fin del ciclo FOR');

/* Ciclos al reves */
for (let i = 150; i >= 1; i--) {
    console.log('Iteraci贸n: ${i}');
}
console.log('Fin del ciclo FOR al reves');

/* Ciclos con anidados */
for (let i = 1; i <= 4; i++) {
    console.log(`Empieza iteraci贸n: ${i}`);
    for (let j = 0; j <= 4; j++) {
        console.log(j)
    }
}

/* Ciclos con WHILE */
let x = 1
while (x <= 4) {
    console.log(`iteraci贸n: ${x}`)
    x++
}
console.log('Fin del ciclo WHILE');

/* Ciclos con do-while */
let y = 1;

do {
    console.log(`Iteraci贸n: ${y}`);
    y++;

} while (y <= 4);

Este es un peque帽o programa que dise帽e en python para indicar si un los n煤meros en un array son impares o pares:

edades = [5, 10, 20, 19]
i = 0
a = 0

while a < 3:
for i in range(4):
if edades[i] >= 18:
print(" TU EDAD ES =", edades[i], "ERES MAYOR DE EDAD 馃槂 鈥)
else:
print(鈥 TU EDAD ES = ", edades[i], "ERES MENOR DE EDAD 馃槮 ")
a = a + 1

let a=0;
let edades =[5,10,20,18];
do{
   if (edades [a] < 18){
        console.log(`Tienes ${edades[a]} a帽os, no eres mayor de edad`)
    }else{
        console.log(`Tienes ${edades[a]} a帽os, eres mayor de edad`)
    }
    a++; 
}while(a<4);
let edades = [5, 10, 20, 18];

    for(i = 0; i < 4 ; i++){
    if (edades [i] < 18){
        console.log(`${edades[i]} no eres mayor de edad`)
    }else{
        console.log(`${edades[i]} eres mayor de edad`)
    }
}

// ciclo for

let edades = [5, 10, 20, 18];

for (i = 0; i < 4; i++) {
if (edades[i] >= 18) {
console.log(鈥淓s mayor de edad鈥);
} else {
console.log(鈥渘o comple con la mayoria de edad鈥);
}
}

// ciclo while

let n = 0;

while (n < 4) {
if (edades[n] >= 18) {
console.log(鈥渆s mayor de edad鈥);
} else {
console.log(鈥渘o es mayor de edad鈥);
}
n++;
}

// ciclo do while

let r = 0;

do {
if (edades[r] >= 18) {
console.log(鈥渆s mayor de edad鈥);
} else {
console.log(鈥渘o es mayor de edad鈥);
}
r++;
} while (r < 4);

Plantee el problema utilizando Python. He visto muchos comentarios de gente utilizando JavaScript, lo cual me hace cuestionar el valor del lenguaje que me encuntro utilizando.

<ages = [12,1,13,8,19,3,43,76,23,18,13]

for index in range(len(ages)):
    print(f"Persona numero {index+1}: Edad {ages[index]}")
    if ages[index] >= 18:
        print("Mayor de edad")
    else: 
        print("Menor de edad.")
print()
iter = -1        
while iter <= 9:
    iter +=1
    print(f"*Persona numero {iter+1}: Edad {ages[iter]}")
    if ages[iter] >= 18:
        print("Mayor de edad")
    else: 
        print("Menor de edad. ")> 

if(edad=o;edad>=18;edad=+++)
while(edad>=18)[
edad=edad+1
do (edad=edad+1)[
while(edad>=18)

Estos son mis ejemplos.
Usando For

Usando While y Do while

Buenas envio aporte usando el ciclo do while en pseint 馃槂
Acepto feedback para mejorar 馃槂

edades = [5, 10, 20, 18]
i = 0

while i < len(edades):
    if edades[i] >= 18:
        print("La persona con la edad " + str(edades[i]) + " es mayor de edad.")
    else:
        print("La persona con la edad " + str(edades[i]) + " es menor de edad.")
    i += 1

En este c贸digo, primero definimos un array de edades edades que contiene cuatro n煤meros: 5, 10, 20 y 18. Luego, utilizamos un ciclo while para iterar a trav茅s de cada uno de estos n煤meros. En cada iteraci贸n, comprobamos si la edad es mayor o igual a 18 utilizando un if y, si es as铆, imprimimos un mensaje que indica que la persona es mayor de edad. Si la edad es menor que 18, imprimimos un mensaje que indica que la persona es menor de edad. Adem谩s, incrementamos la variable i en cada iteraci贸n del ciclo while, para poder acceder a los elementos del array.

Una vez que i es mayor o igual al tama帽o del array, la condici贸n del ciclo while se vuelve falsa y el ciclo se detiene. En ese punto, el c贸digo ha terminado de recorrer todo el array de edades.

edades = [5, 10, 20, 18]

for edad in edades:
    if edad >= 18:
        print("La persona con la edad " + str(edad) + " es mayor de edad.")
    else:
        print("La persona con la edad " + str(edad) + " es menor de edad.")

En este c贸digo, primero definimos un array de edades edades que contiene cuatro n煤meros: 5, 10, 20 y 18. Luego, utilizamos un ciclo for para iterar a trav茅s de cada uno de estos n煤meros. En cada iteraci贸n, comprobamos si la edad es mayor o igual a 18 utilizando un if y, si es as铆, imprimimos un mensaje que indica que la persona es mayor de edad. Si la edad es menor que 18, imprimimos un mensaje que indica que la persona es menor de edad.

Una vez que el ciclo for llega al final y ha iterado a trav茅s de todos los elementos del array edades, el c贸digo simplemente se detiene y no hay m谩s acciones que se realicen.

En el ejemplo que proporcion茅 anteriormente, una vez que el ciclo for termina de iterar a trav茅s de las cuatro edades, no hay m谩s c贸digo que se ejecute despu茅s. El programa simplemente finaliza su ejecuci贸n.

Sin embargo, es importante tener en cuenta que en otros casos, despu茅s del ciclo for, podr铆a haber m谩s c贸digo en el programa que se ejecute. En ese caso, una vez que el ciclo for termina de iterar a trav茅s de los elementos del array, el programa seguir谩 ejecutando el resto del c贸digo que est茅 despu茅s del ciclo.

Mi algoritmo con ciclo for y un while para validar edades.

Este es mi diagrama de flujo, aplicando algunos condicionales y ciclos 馃槂
Calcula el valor total a pagar seg煤n la cantidad de productos y su precio.

Algoritmo en pseint

Este es mi aporte, est谩 en el lenguaje de programaci贸n de JavaScript.

//Definicion de variables en Scope global
let edadPersonas = [5, 10, 20, 18];
const MAYOREDAD = 18; //<-- Lo escribo en may煤scula, por buena practica.
let initialValue = 0;

//Ciclo FOR
for (let n = 0; n < edadPersonas.length; n++) {
  console.log('Edad de la persona es: ' + edadPersonas[n])
  if (edadPersonas[n] >= MAYOREDAD) {
    console.log('Eres mayor de edad')
  }else{
    console.log('No eres mayor de edad')
  }
}

//Ciclo While

while (initialValue < edadPersonas.length) {
  console.log('Edad de la persona es: ' + edadPersonas[initialValue])
  if (edadPersonas[initialValue++] >= MAYOREDAD) {
    console.log('Eres mayor de edad');
  }else{
    console.log('Eres menor de edad');
  }

}

//Ciclo Do While
do {

  console.log('La edad de la persona es: ' + edadPersonas[initialValue])
  if (edadPersonas[initialValue++] >= MAYOREDAD) {
    console.log('Eres mayor de edad');
  }else{
    console.log('Eres menor de edad');
  }

} while (initialValue < edadPersonas.length);

For asistentes i=1 To 5
MsgBox "Persona registrada"
Next
While segundos <= 60;
segundos += 1
End While
Do
MsgBox "Cargando Aplicaci贸n"
j += 1
Loop While j < 100

ciclo for

edades = [5,10,20,18]
     for i in edades:
         if edades[0] < 4:
             edades[0] + 1
         elif i >= 18:
             print("Es mayor de edad")
         else:
             print("Es menor de edad") 

ciclo while

edades = [5, 10, 20, 18]
    i = 0
    while i < 4:
        if edades[i] >= 18:
             print("Es mayor de edad")
        else:
             print("Es menor de edad")
        i = i + 1

Aqu铆 est谩 un ejemplo de algoritmo en pseudoc贸digo que controla la entrada de una variable num茅rica hasta que el usuario ingrese un n煤mero mayor que cero utilizando un ciclo do-while:

Declare una variable num con valor 0
Repetir
  Escribir "Por favor ingrese un n煤mero mayor que cero: "
  Leer num
Mientras num <= 0
Escribir "Gracias, has ingresado el n煤mero ", num

Aqu铆 est谩 un ejemplo de algoritmo en pseudoc贸digo que controla la entrada de una variable num茅rica hasta que el usuario ingrese un n煤mero mayor que cero utilizando un ciclo while:

Declare una variable num con valor 0
Mientras num <= 0 hacer
  Escribir "Por favor ingrese un n煤mero mayor que cero: "
  Leer num
Fin mientras
Escribir "Gracias, has ingresado el n煤mero ", num

Este algoritmo utiliza un ciclo while para repetir un bloque de c贸digo mientras la condici贸n num <= 0 sea verdadera. El bloque de c贸digo solicita al usuario que ingrese un n煤mero y lo almacena en la variable num. Si el valor de num es mayor que cero, el ciclo termina y el algoritmo imprime un mensaje de agradecimiento. Si el valor de num es igual o menor a cero, el ciclo contin煤a hasta que el usuario ingrese un n煤mero v谩lido.

Aqu铆 est谩 un ejemplo de algoritmo en pseudoc贸digo que genera y muestra los n煤meros del 1 al 10 utilizando un ciclo for:

Para contador = 1 hasta 10 hacer
  Escribir contador
  Aumentar contador en 1
Fin para

Este algoritmo utiliza un ciclo for para repetir 10 veces un bloque de c贸digo que imprime el valor de la variable contador y luego incrementa su valor en 1. La variable contador se inicializa en 1 y el ciclo contin煤a hasta que el valor de contador sea mayor o igual a 10. Por lo tanto, el algoritmo imprimir谩 los n煤meros del 1 al 10.

COdigo

Algoritmo validaredadgrupo
Escribir "Cantidad estudiantes por grupo:"
leer grupo

Dimension edad[grupo]
Dimension nomgrup[grupo]
Para i<-1 Hasta grupo Con Paso 1 Hacer
	Escribir "Ingrese nombre:"
	Leer nomgrup[i]
	Escribir "Ingrese Edades:"
	Leer  edad[i]
	
FinPara

Para i<-1 Hasta grupo Con Paso 1 Hacer
	
	si edad[i]>=18 Entonces
		Escribir "Estudiante ", nomgrup[i], " Es Mayor de edad"
		Escribir ""
	SiNo
		Escribir "Estudiante ", nomgrup[i], " Es Mayor de edad"
		Escribir ""
	FinSi
FinPara
Escribir "Final Validacion"

FinAlgoritmo

Mi diagrama de flujo para este reto, realizado en Visio.

Buena explicacion b谩sica de los ciclos.

Buen d铆a, los bucles o loop nos sirven para que un c贸digo que se establezca se repita las veces necesarias hasta que no corresponda m谩s al par谩metro establecido.

En el uso de los for se debe cumplir con una estructura (inicio, las veces que correr谩 el ciclo, y un incremento que permitir谩 que el ciclo corra hasta llegar al final establecido.

/Codigo en javascript para obtener el promedio de notas de un grupo de estudiantes, evaluando cual de ellos est谩n aprobados.

//Datos de los estudiantes
let estudiantes = [
  {
    nombre: "Juan G贸mez",
    notas: [10, 05, 14, 03, 02]
  },
  {
    nombre: "Camila Castillo",
    notas: [18, 15, 20, 19, 14]
  },
  {
    nombre: "脕ngel Machado",
    notas: [17, 10, 11, 08, 12],
  },
  {
    nombre: "M贸nica P茅rez",
    notas: [10, 08, 11, 05, 09]
  },
  {
    nombre: "Alejandro Galindo",
    notas: [10, 12, 14, 17, 15]
  },
  {
    nombre: "Sebasti谩n Andara",
    notas: [19, 15, 20, 12, 20]
  },
  {
    nombre: "Roxana Linares",
    notas: [15, 11, 13, 09, 18]
  },
  {
    nombre: "Andrea Sandoval",
    notas: [18, 12, 13, 12, 12]
  },
  {
    nombre: "Cesar Carrillo",
    notas: [14, 15, 16, 09, 12]
  }
];

console.log("Evaluaci贸n de estudiantes");
console.log("==========================");
console.log(" ");

//Recorre el array de estudiantes y lo incrementa
for (let i = 0; i < estudiantes.length; i++) {
  const estudiante = estudiantes[i];
  const promedio = calcularPromedio(estudiante);

  console.log(`Nombre: ${estudiante.nombre}`);
  console.log(`Notas: ${estudiante.notas}`);
  console.log(`Prmedio: ${promedio}`);
  
//Valida si el estudiante esta aprobado o no y env铆a el mensaje.
  console.log(promedio >= 10 ? 'Felicitaciones has aprobado' : 'Has reprobado debes esforzarte un poco m谩s');
  console.log(`-----------------------------`);
}

// Se crea una funci贸n para calcular el promedio de cada estudiante
function calcularPromedio(estudiante) {
  //Sumar todas las notas de un mismo estudiante
  let suma = 0;
  for (let i = 0; i < estudiante.notas.length; i++) {
    suma += estudiante.notas[i];
  }

  //Dividir la suma entre la cantidad total notas

  const promedio = suma / estudiante.notas.length;

  return promedio;
}
Algoritmo MAYORES_DE_EDAD 
	EDAD=0
	PER=0
	N=0
	ESCRIBIR "A CUANTAS PERSONAS LE VA A EVALUAR LA EDAD:   "; LEER PER
	Mientras N<PER Hacer
		N=N+1
		ESCRIBIR N ".  NOMBRE DE LA PERSONA :  "
		LEER NOM
	     ESCRIBIR "DIGITE SU EDAD :   "
	     LEER EDAD	
	     SI EDAD>=18 Entonces
			 ESCRIBIR NOM " ES MAYOR DE EDAD"
		 SiNo
			 ESCRIBIR NOM " ES MENOR DE DAD"
	     FinSi
    Fin Mientras
FinAlgoritmo

Este algoritmo funciona con la 贸rden 鈥渇or鈥, que opinan?

public class Enero26_3 {
//ciclo Do While
public static void main(String[] args) {
int n=0;
int[] edad = new int[4];
edad[0]=5;
edad[1]=10;
edad[2]=20;
edad[3]=18;
do {
if (edad[n]>=18){
System.out.println(鈥渓a persona con 鈥+edad[n]+鈥 a帽os, es Mayor de edad鈥);
} else{
System.out.println(鈥渓a persona con 鈥+edad[n]+鈥 a帽os, es Menor de edad鈥);
}
n++;
} while (n<4);
}
}