Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Facultad de Ingeniería
Escuela Profesional de Ingeniería de Sistemas Asignatura: Fundamentos de Programación
Cuando una instrucción Hacer-Mientras se ejecuta, lo primero que sucede es la ejecución del
bucle (todas las instrucciones) y a continuación se evalúa la expresión booleana de la condición.
Si se evalúa como verdadera, el cuerpo del bucle se repite y se vuelve a evaluar la condición, si
sigue siendo verdadera se seguirá repitiendo el bucle hasta que la condición sea falsa.
Dentro del bucle existirá una instrucción que en un cierto momento hará que la condición sea
falsa.
estructura repetitiva
hacer/mientras
hacer
instrucción 1
instrucción 2
.
.
instrucción n
mientras (condición)
1
Universidad los Ángeles de Chimbote
Facultad de Ingeniería
Escuela Profesional de Ingeniería de Sistemas Asignatura: Fundamentos de Programación
Ejemplo 5:
En el curso de Algoritmos y Diagramación existen 40 alumnos, de los cuales se tiene el promedio
de la Primera Unidad. Se pide realizar un algoritmo que permita hallar el promedio general de
estos alumnos.
Solución
2
Universidad los Ángeles de Chimbote
Facultad de Ingeniería
Escuela Profesional de Ingeniería de Sistemas Asignatura: Fundamentos de Programación
algoritmo Ejemplo5
var
entero: nota, c, suma
real: prom
inicio
c=0
suma = 0
hacer
c=c+1
leer(nota) Cuerpo del bucle
suma = suma + nota
mientras (c < 40)
prom = suma/c
escribir(‘El promedio general es : ’,prom)
fin
3
Universidad los Ángeles de Chimbote
Facultad de Ingeniería
Escuela Profesional de Ingeniería de Sistemas Asignatura: Fundamentos de Programación
Ejemplo 6:
Se desea contabilizar cuántos números son positivos, negativos y neutros del ingreso continuo de
números enteros. Este proceso re repite hasta que el usuario pulse la tecla N al mensaje en
pantalla ‘Desea Continuar[s/n]:’.
Solución
Para la solución del problema se va a necesitar de tres contadores, que realizarán la acción de
contar cuántos números son positivos, negativos y neutros se ingresarán por teclado, de una serie
de números.
cc : contador de ceros
cp : contador de positivos
cn : contador de negativos
Además, utilizaremos estructuras selectivas anidadas, con las que haremos la comprobación de
cuáles números son iguales a cero, positivos y negativos. Y de acuerdo al resultado de la
condición, los contadores (cc, cp y cn) incrementarán su valor.
Terminadas de realizar todas las condiciones, se preguntará al usuario si ‘Desea continuar [s/n]’
ingresando más números, para ello utilizaremos una variable de tipo carácter, llamado opc. El cuál
almacenará el carácter de ‘s’ de “sí continuo”, o ‘n’ de “no continuo” ingresando valores. De
acuerdo a la respuesta seguiremos o terminamos el bucle.
4
Universidad los Ángeles de Chimbote
Facultad de Ingeniería
Escuela Profesional de Ingeniería de Sistemas Asignatura: Fundamentos de Programación
5
Universidad los Ángeles de Chimbote
Facultad de Ingeniería
Escuela Profesional de Ingeniería de Sistemas Asignatura: Fundamentos de Programación
algoritmo Ejemplo6
var
entero: n, cc, cp, cn
caracter: opc
inicio
cc = 0
cp = 0
cn = 0
hacer
leer (n)
si (n=0) entonces
cc = cc + 1
sino
si (n>0) entonces
cp = cp + 1
sino
cn = cn + 1
fin_si
fin_si
escribir(‘Desea continuar : [s/n] :’)
escribir(opc)
mientras (opc = ’s’)
escribir(‘Cantidad de ceros : ’,cc)
escribir(‘Cantidad de positivos : ’,cp)
escribir(‘Cantidad de ceros : ’,cn)
fin
6
Universidad los Ángeles de Chimbote
Facultad de Ingeniería
Escuela Profesional de Ingeniería de Sistemas Asignatura: Fundamentos de Programación
Ejemplo de autoaprendizaje:
Resuelva en diagrama de flujo, diagrama estructurado y pseudocódigo.
Ejemplo 7:
En una campaña médica de medición de presión, se pide que se ingresen todas las edades de los
pacientes que serán atendidos. Se solicita que se calcule la mayor y menor edad ingresada. El
ingreso acaba cuando se ingrese un valor 0.