2. Enunciado de Repetición.
Son los enunciados que permiten repetir
varias veces un conjunto de enunciados
según se necesite de acuerdo a una
condición.
Se les conoce también como ciclos.
Departamento de ingeniería
3. Enunciado de Repetición - Mientras
Diagrama de Flujo
SI NO
<comparación>
MIENTRAS <comparación> HACER Pseudo Código
VERDADERO
Enunciado(s) a repetir
FIN MIENTRAS
FALSO
Enunciado(s)
Departamento de ingeniería
4. Enunciado de Repetición - Mientras
Diagrama de Flujo
SI contador < numero
NO
contador contador + 1
promedio acumulador/contador
Leer(edad)
Escribir (promedio)
acumulador acumulador + edad
Fin
MIENTRAS contador < numero HACER Pseudo Código
contador contador +1
leer(edad)
acumulador acumulador + edad
FIN MIENTRAS
promedio acumulador/contador Departamento de ingeniería
escribir(promedio)
5. Representación de Algoritmos (I)
Ejemplo:
A. Solicite al usuario 3 números y presente en
pantalla el promedio de estos.
B. Solicite al usuario 20 número y presente en
pantalla el promedio de estos.
Departamento de ingeniería
6. Representación de Algoritmos -
mientras
Ejercicios:
Elaborar un algoritmo que calcule el promedio
de edad de los estudiantes del salón de clase,
de acuerdo al numero de estudiantes.
Departamento de ingeniería
7. Solución completa utilizando Pseudo Código
Algoritmo promedio_edad
var
entero:cant_est, contador, prom_edad
inicio
escribir(´Ingrese la cantidad de estudiantes´)
leer(cant_est)
contador 0 //Almacena la cantidad de estudiantes ingresados
acumulador 0 //Acumula la edad para obtener el promedio
mientras (contador < cant_est) hacer
contador contador +1
escribir(‘Ingrese la edad del estudiante’)
leer(edad)
acumulador acumulador + edad
fin_mientras
si (contador >0) entonces
prom_edad acumulador/contador
escribir(‘El promedio de edad de los estudiantes es:’,
prom_edad)
si_no
escribir(‘No se ingresaron edades’)
fin_si
fin
Departamento de ingeniería
8. Solución completa utilizando Pseudo Código
Terminal Inicio
Diagrama de
Entrada de Datos Leer
Flujo.
(cant_est)
contador 0
Proceso acumulador 0
Decisión
SI contador <
NO
cant_est
NO
contador contador
SI contador > 0
+1
Prom_edad
Prom_edad 0
acumulador/contador
Leer (edad)
Salida de Datos Escribir
acumulador acumulador + (prom_edad)
edad
Departamento de ingeniería Fin
9. Enunciado de Repetición – Haga .. Mientras
Diagrama de Flujo
SI
NO
<comparación>
HAGA Pseudo Código
VERDADERO
Enunciado(s) a repetir
MIENTRAS <comparación>
FALSO
Enunciado(s)
Departamento de ingeniería
10. Enunciado de Repetición – Haga .. Mientras
Diagrama de Flujo
Leer SI
(Edad) NO
Promedio
Edad > 0
acumulador/contador
contador contador + 1
Acumulador acumulador +
edad
Escriba(promedio)
HAGA Pseudo Código
leer (edad)
contador contador + 1
Acumulador acumulador + edad
MIENTRAS edad > 0
promedio acumulador/contador
Escriba (promedio) Departamento de ingeniería
11. Representación de Algoritmos –
Haga - mientras
Ejercicios:
◦ Algoritmo que presente en pantalla los
primeros 10 primeros números divisibles
entre 3.
Departamento de ingeniería
12. Solución completa utilizando Pseudo Código – Solución 1
Algoritmo numeros_div_3
var
entero: num, cont_num,
Inicio
cont_num 0
num 3
haga
si (num MOD 3 = 0) entonces
escribir(num)
cont_num cont_num + 1
fin_si
mientras (cont_num < 10)
fin
Departamento de ingeniería
13. Representación de Algoritmos.
Ejercicios:
Modifique el algoritmo que calcula el
promedio de edad de los estudiantes del
salón de clase, de acuerdo al numero de
estudiantes, calculando el promedio de
edad de los hombres y mujeres del salón.
Departamento de ingeniería
14. Solución completa utilizando Pseudo Código – Primera parte
Algoritmo prom_edad_hm_muj
Var
entero: cant_est, cont_est, cont_mujeres, cont_hombres, acum_edad_est, acum_edad_m,
acum_edad_h, edad, prom_edad_est, prom_edad_h, prom_edad_m
cadena: sexo
Inicio
escribir(‘Ingrese la edad de los estudiantes’)
leer(cant_est)
cont_est 0
cont_mujeres 0
cont_hombres 0
acum_edad_est 0
acum_edad_m 0
acum_edad_h 0
mientras cont_est < cant_est hacer
escribir(‘Ingrese la edad’)
leer(edad)
escribir(‘Ingrese el sexo (mujer/hombre’)
leer(sexo)
si sexo = ‘mujer’ entonces
cont_mujeres cont_mujeres +1
acum_edad_m acum_edad_m + edad
sino
cont_hombres cont_hombres +1
acum_edad_h acum_edad_h + edad
fin_si
cont_est cont_est +1
acum_edad_est acum_edad_est + edad Departamento de ingeniería
fin mientras
15. Solución completa utilizando Pseudo Código – Segunda parte
si (cont_est >0) entonces
prom_edad_est acum_edad_est/cont_est
escribir(‘El promedio de edad de los estudiantes es:’, prom_edad_est)
si (cont_mujeres > 0) entonces
prom_edad_m acum_edad_m/cont_mujeres
escribir(‘El promedio de edad de las mujeres es:’ prom_edad_m)
sino
escribir(‘No hay mujeres en el salón de clase’)
fin_si
si (cont_hombres > 0) entonces
prom_edad_h acum_edad_h/cont_hombres
escribir(‘El promedio de edad de los hombres es:’ prom_edad_h)
sino
escribir(‘No hay hombres en el salón de clase’)
fin_si
sino
escribir(‘No se ingresó información de los estudiantes’)
fin
Departamento de ingeniería
16. Ejercicios en clase
1. Programa que presente las raíces de una
ecuación cuadrática. Se debe garantizar
que el usuario ingrese un valor diferente de
cero para el primer coeficiente. Presente
también las raíces imaginarias.
2. Elabore un programa que pida al usuario 30
números. De los números ingresados por
el usuario, cuántos son pares, cuántos
impares y cuántos son divisibles entre 7.
3. Programa que determine si un número es o
no primo.
Departamento de ingeniería