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 “FIN” 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 “Aqui 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 “do-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 “for” pero el “while” y el “do-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 ‘Preparar café’

While ‘proceso 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 “While 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 “if” o “si” 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 “else” o “sino” en español, que se ejecutan en caso contrario a la condición establecida en el “if”, y “else if” o “sino 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 “for” y el “while” 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 “try-catch” o “intenta-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 “if” o “si” 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 “if” es la siguiente:


if condición:
    instrucción(es)

Donde “condición” es una expresión booleana que evalúa si se cumple o no una determinada condición, y “instrucció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 “else” o “sino” en español, que se ejecutan en caso contrario a la condición establecida en el “if”. La sintaxis básica de la estructura condicional “if-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 “else if” o “sino si” en español, que permite establecer varias condiciones consecutivas para tomar decisiones más complejas. La sintaxis básica de la estructura condicional “if-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: “color”, que representa el color actual del semáforo, y “tiempo”, 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 “while” y el ciclo “for”.

Ciclo while

El ciclo “while” 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 “i” sea menor o igual a 10. En cada iteración, se suma el valor de “i” a la variable “suma”, y se incrementa el valor de “i” en 1. Después de que el ciclo termina, se imprime el valor final de la variable “suma”.

Ciclo for

El ciclo “for” 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 “variable” 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 “fruta” 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 “while” y “for” 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(“Carga 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(“Adivinaste a la primera”)
else:
print(“vuelve a intentarlo”)
for bucle in range(1,i):
z = int(input("Ingrese otro número: "))
if z==num:
print(“adivinaste”)
break
else:
print(“vuelve 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(“Es mayor de edad”);
} else {
console.log(“no comple con la mayoria de edad”);
}
}

// ciclo while

let n = 0;

while (n < 4) {
if (edades[n] >= 18) {
console.log(“es mayor de edad”);
} else {
console.log(“no es mayor de edad”);
}
n++;
}

// ciclo do while

let r = 0;

do {
if (edades[r] >= 18) {
console.log(“es mayor de edad”);
} else {
console.log(“no 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 “for”, 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(“la persona con “+edad[n]+” años, es Mayor de edad”);
} else{
System.out.println(“la persona con “+edad[n]+” años, es Menor de edad”);
}
n++;
} while (n<4);
}
}