WHILE

CICLOS




 Mtra. Faviola Vega.
Introd. Computación
INSTRUCCIÓN WHILE
En este tema vamos a ver una estructura
repetitiva más primitiva que FOR ya que
no maneja automáticamente el contador
y por lo tanto es más difícil de utilizar,
pero usada correctamente puede ser
bastante más flexible.
FOR se incrementa con el STEP
WHILE requiere un contador

                Mtra. Faviola Vega.
               Introd. Computación
Una forma más general que el FOR
para realizar interacciones es el WHILE
(mientras), el cual permite repetir una
serie de instrucciones mientras una
determinada expresión lógica sea
verdadera. Su forma general utilizando
pseudocódigo es la siguiente




               Mtra. Faviola Vega.
              Introd. Computación
Mientras (expresión lógica)
     Instrucciones a repetir
mientras la expresión lógica
es verdadera
Fin del Mientras

        Mtra. Faviola Vega.     Introd.
                  Computación
Representación gráfica del
         While




         Mtra. Faviola Vega.
        Introd. Computación
EJEMPLO
Se muestra un algoritmo que empleando
el WHILE escriba 5 veces el texto “Hola”
INICIO
   Hacer i = 1
    while (i<=5)
           imprime “Hola”
            i = i +1
    Fin del While
Fin
             Mtra. Faviola Vega.     Introd.
                       Computación
Como pudo observarse en el ejemplo
anterior para que el proceso iterativo
llevado a cabo en el MIENTRAS no sea
infinito, dentro de las instrucciones que
se ejecutan en su interior se debe colocar
una instrucción que modifique el valor de
verdad en la expresión lógica.




            Mtra. Faviola Vega.     Introd.
                      Computación
ACTIVIDAD
• Ejemplo: Cuantas veces se escribe el
texto “HOLA” al ejecutar los siguientes
algoritmos:




            Mtra. Faviola Vega.     Introd.
                      Computación
Se puede observar que para utilizar un
WHILE se deben responder las
siguientes preguntas:
• 1.- En que valor inician la(s) variable(s)
de control
• 2.- Cuál es la condición de
terminación?
• 3.- Cómo se modifican la(s)
variables(s) de control?


             Mtra. Faviola Vega.     Introd.
                       Computación
Actividad convierte el siguiente
    Diagrama en algoritmo




           Mtra. Faviola Vega.     Introd.
                     Computación
EJEMPLO
Diseñar un algoritmo para escribir los números
impares menores que 100

Inicio
  Variables
  …..
       i=1
       While (i<=100)
           Imprime i
            i = i +2
        Fin del Mientras
  Fin
                Mtra. Faviola Vega.     Introd.
                          Computación
ACTIVIDAD: Realiza la prueba de escritorio con el
    siguiente Algoritmo para los números 17, 25, 12, 865,
    658, 1, 333 escribe los resultados y escribe su diagrama
Encontrar el valor de P que cumple la siguiente ecuación:
En otras palabras se pide contar cuantos números enteros
positivos se pueden sumar, sin que su suma exceda 1000
Inicio
..
   i=0
   suma = 0
   While suma = 0
        i=i+1
        suma = suma + i
   Fin del While
        P = i -1
         Imprime P
Fin
                   Mtra. Faviola Vega.     Introd.
                             Computación
Recordemos el ejemplo de escribir los
números del 1 al 5 con la instrucción
FOR.


           FOR n = 1 TO 5
              PRINT n
           NEXT

           Mtra. Faviola Vega.     Introd.
                     Computación
Ahora veremos como se hace lo mismo usando
la instrucción WHILE (Mientras).
n=1
WHILE n <= 5
   PRINT n
   n=n+1
WEND
Esto lo que hace es ejecutar el bloque de
instrucciones (Lo que hay entre el WHILE y el
WEND) una y otra vez mientras se cumpla la
condición del WHILE. Un poco más difícil que
con el FOR.
             Mtra. Faviola Vega.     Introd.
                       Computación
Se puede ver que el funcionamiento es
parecido al del FOR, solo que aquí lo
tenemos que controlar todo.
 Las dos reglas que dijimos sobre los
contadores del FOR ya aquí no tienen
sentido porque de hecho nosotros
vamos a tener que incrementar el
contador haciendo una asignación y
una vez terminado podemos estar
seguro del valor que tiene la variable.
           Mtra. Faviola Vega.     Introd.
                     Computación
Una norma que sí conviene respetar
(Aunque no siempre es necesario) es que
la instrucción que incrementa el contador
sea la última del bloque, ya que si está en
otro sitio ejecutaremos unas instrucciones
con un valor y las demás con el otro, con
lo que nos podemos liar. Un error muy
típico es que se nos olvide de poner la
instrucción de incrementar el contador,
produciendo un bucle infinito que hará
que nuestro programa no termine nunca.
Si un programa se bloquea es
conveniente revisar esto.

            Mtra. Faviola Vega.     Introd.
                      Computación
También puede pasar que no
lleguemos a entrar al MIENTRAS
porque la condición ya sea falsa la
primera vez, por ejemplo:

contador = 120
  WHILE contador < 100
     PRINT "Esto no se va a llegar a
escribir nunca.”
  contador = contador + 1

           Mtra. Faviola Vega.     Introd.
                     Computación
ACTIVIDAD
Usando la instrucción mientras hacer un algoritmo
para un programa que imprima la serie 1, 3, 5, 7,9,
realiza su diagrama de Flujo y su prueba de
escritorio.
 Inicio
   Variable
          I Integer
   Leer i
    i =1
      While i<=9
           imprime i
           i =i+2
      fin mientras
Fin
               Mtra. Faviola Vega.     Introd.
                         Computación
ACTIVIDAD

 1.- Hacer un algoritmo para un
programa que encuentre el primer
entero que haga que la suma de la
serie 1, 2, 3, 4, 5, 6, 7, 8,9,...; supere
30.




             Mtra. Faviola Vega.     Introd.
                       Computación
Inicio
variables
      i int
      num int
leer num
mientras num>1 hacer
  If num modulo 2 = 0 entonces
num=num/2
 de lo contrario
       num=num*3+1
 imprimir num
fin mientras
Fin
•  El MODULO TOMA EL RESIDUO recuerda 5/2=2 y queda 1 EL RESIDUO ES EL
QUE TOMA


                     Mtra. Faviola Vega.     Introd.
                               Computación
ACTIVIDAD

• Hacer el algoritmo para un programa
que calcule la suma de ciertos números
ingresados por el teclado. El cálculo de
la suma se hará en cualquier momento.




             Mtra. Faviola Vega.     Introd.
                       Computación
ACTIVIDAD
Escribir un algoritmo para un programa
que imprima la siguiente tabla de
temperaturas Fahrenheit y Celsius.
Sugerencia
 F       C
32      0
34      1,1111
36     2,2222
...     ...
100 37,778
            Mtra. Faviola Vega.     Introd.
                      Computación
Inicio
  variables
 fareng int
    cel int
 fareng 30
While fareng<=100
    Cel=(fareng-32)*5/9
    fareng=fare+2
    imprimir fareng, cel
Fin mientras
Fin
           Mtra. Faviola Vega.     Introd.
                     Computación
Inicio
 Variables
 x int
     Dame Numero; x
     Leer x
While x<32000 y x<>0 hacer
 iF x>=0 y x<10 entonces imprimir x, "TIENE 1 CIFRA"
Fin si
 If x>9 y x<100 entonces imprimir x, "TIENE 2 CIFRAS"
Fin si
IF x>99 y x<1000 entonces imprimir x, "TIENE 3
CIFRAS" Fin
 IF x>999 y x< 10000 entonces imprimir x, "TIENE 4
CIFRAS" Fin si
 IF x>9999 y x<=32000 entonces imprimir "TIENE 5
CIFRAS" Fin si
Fin mientras
Fin


              Mtra. Faviola Vega.     Introd.
                        Computación
ACTIVIDAD
Escriba el algoritmo para un programa
en el que se pida al usuario ingresar 10
números enteros impares para
sumarlos. Elabore el programa de
manera que no se arruine si el usuario
escribe algunos enteros pares. El
programa debe salir del ciclo e imprimir
la suma sólo cuando se hayan
ingresado los 10 enteros impares.
            Mtra. Faviola Vega.     Introd.
                      Computación
Inicio
 x int
    suma int
    c int
while e(c<10)
 Leer x
 si x modulo 2 <>0 entonces
  suma suma+x
        c c+1
 fin si
Fin mientras
imprimir suma
Fin

          Mtra. Faviola Vega.     Introd.
                    Computación
Fuente:
• http://www.mailxmail.com/curso-
algoritmos-lenguaje-c/bucles-while-1




          Mtra. Faviola Vega.     Introd.
                    Computación

Más contenido relacionado

PPT
Estructuras repetitivas - pseudocodigo
PDF
Expresiones regulares
PDF
Reglas de produccion
PPTX
PPTX
Programación Diagrama de flujo - Ejercicios Propuestos
PDF
Arreglos vectores pseint
PPTX
encapsulamiento
PPTX
Presentación pseudocódigo
Estructuras repetitivas - pseudocodigo
Expresiones regulares
Reglas de produccion
Programación Diagrama de flujo - Ejercicios Propuestos
Arreglos vectores pseint
encapsulamiento
Presentación pseudocódigo

La actualidad más candente (20)

PDF
Operadores y expresiones en pseudocódigo
PDF
Comandos ddl y dml
PPTX
Algoritmos y pseudocodigo
DOCX
Analisis de sistemas estructurados
PPT
Modulo 1 algoritmo
PPTX
Uml lenguaje unificado de modelado
PPTX
If else
PDF
Unidad 4 Metodología para el Análisis y Planteamiento de Problemas
PDF
Ejercicios secuenciales
PPT
Fundamentos de Programación
PDF
Clase de datos variables constantes
PDF
Estructuras basicas de un algoritmo
PPT
CreacióN De Objetos En MySQL
PPTX
Presentacion de Visual Basic
PPTX
JavaScript.pptx
DOCX
Metodologia web
PPT
Patrones GRASP de tipo de bajo acoplamiento
DOCX
control de concurrencia
PPTX
Bucles en python
PPTX
Power point algoritmo
Operadores y expresiones en pseudocódigo
Comandos ddl y dml
Algoritmos y pseudocodigo
Analisis de sistemas estructurados
Modulo 1 algoritmo
Uml lenguaje unificado de modelado
If else
Unidad 4 Metodología para el Análisis y Planteamiento de Problemas
Ejercicios secuenciales
Fundamentos de Programación
Clase de datos variables constantes
Estructuras basicas de un algoritmo
CreacióN De Objetos En MySQL
Presentacion de Visual Basic
JavaScript.pptx
Metodologia web
Patrones GRASP de tipo de bajo acoplamiento
control de concurrencia
Bucles en python
Power point algoritmo
Publicidad

Similar a While para presentación (20)

PDF
Prac1
PPTX
Tutorial funciones básicas Matlab
PPTX
Ing. Mecatrónica, Prog. Básica U3 control de flujo
PPTX
Fundamentos de Programación - Unidad III Control de Flujo
PPTX
Sesion02
PDF
Mathlab tutorial
PDF
Graficas con Matlab
PPTX
Fundamentos de Programacion - Unidad 4 control de flujo
PDF
Matlab aplicacione s
PPTX
Solución de Problemas de Ingeniería con MATLAB
PPTX
4. ESTRUCTURA REPETITIVAS (1) python.pptx
PDF
1 Entorno
ODP
PPTX
estructuras flujogramas
PDF
Jyoc java-cap13 recursividad
PDF
Semana 01 guía software libre
PPTX
Como crear un programa de Ciclo WHILE en lenguaje C++
PDF
Presentacion ciclos-1
PDF
Guia 1 matlab
Prac1
Tutorial funciones básicas Matlab
Ing. Mecatrónica, Prog. Básica U3 control de flujo
Fundamentos de Programación - Unidad III Control de Flujo
Sesion02
Mathlab tutorial
Graficas con Matlab
Fundamentos de Programacion - Unidad 4 control de flujo
Matlab aplicacione s
Solución de Problemas de Ingeniería con MATLAB
4. ESTRUCTURA REPETITIVAS (1) python.pptx
1 Entorno
estructuras flujogramas
Jyoc java-cap13 recursividad
Semana 01 guía software libre
Como crear un programa de Ciclo WHILE en lenguaje C++
Presentacion ciclos-1
Guia 1 matlab
Publicidad

Último (20)

PDF
Spanish - Song of Solomon - Google Cloud Translation.pdf
PDF
Demonios_brujeria_y_el_ocultismo_(Serie_Bolsillo)_(Spanish_Edition).pdf
PDF
Un Comienzo difícil para el pueblo de israel
PDF
ES JESUS DIOS LA BIBLIA DICE NO (PDF gratuito)
PDF
Tomo I - II del libro de teología sistemática
PDF
Arcanos Mayores DEL TAROT DE RIDER Y OSHO
PDF
Escritos seleccionados de santa Isabel Ana Seton sobre la Santísima Virgen María
PPTX
Una Dadiva para Jesus tambien se puede titular mi almuerzo para Jesus
DOCX
GUIA DEVOCIONAL DE ESTUDIO PARA HOY.docx
PDF
Como_Entrar en_Contacto_con_su_Guia_Espiritual
PDF
Presentación Proyecto Personal Orgánico Morado.pdf
DOCX
Las reuniones de junta y de oración no deben ser tediosas.docx
PPTX
Presentacion Rescatadas con la familia.pptx
PDF
Budismo Aspiracion de samantabhara.
PPTX
hombres conforme al corazon de Dios.pptx
PPTX
CAMINO A EMAUS panorama profético de los
PPTX
ADELANTE.pptx Presentacion de Salud y temperancia
PPTX
Sacramento confirmación, iniciación cristiana
PPTX
La Hermandad de la Rosa - lyra, venus y sirio.
PPTX
Pregón Pascual Solemne (Kairoi-Litúrgico).pptx
Spanish - Song of Solomon - Google Cloud Translation.pdf
Demonios_brujeria_y_el_ocultismo_(Serie_Bolsillo)_(Spanish_Edition).pdf
Un Comienzo difícil para el pueblo de israel
ES JESUS DIOS LA BIBLIA DICE NO (PDF gratuito)
Tomo I - II del libro de teología sistemática
Arcanos Mayores DEL TAROT DE RIDER Y OSHO
Escritos seleccionados de santa Isabel Ana Seton sobre la Santísima Virgen María
Una Dadiva para Jesus tambien se puede titular mi almuerzo para Jesus
GUIA DEVOCIONAL DE ESTUDIO PARA HOY.docx
Como_Entrar en_Contacto_con_su_Guia_Espiritual
Presentación Proyecto Personal Orgánico Morado.pdf
Las reuniones de junta y de oración no deben ser tediosas.docx
Presentacion Rescatadas con la familia.pptx
Budismo Aspiracion de samantabhara.
hombres conforme al corazon de Dios.pptx
CAMINO A EMAUS panorama profético de los
ADELANTE.pptx Presentacion de Salud y temperancia
Sacramento confirmación, iniciación cristiana
La Hermandad de la Rosa - lyra, venus y sirio.
Pregón Pascual Solemne (Kairoi-Litúrgico).pptx

While para presentación

  • 1. WHILE CICLOS Mtra. Faviola Vega. Introd. Computación
  • 2. INSTRUCCIÓN WHILE En este tema vamos a ver una estructura repetitiva más primitiva que FOR ya que no maneja automáticamente el contador y por lo tanto es más difícil de utilizar, pero usada correctamente puede ser bastante más flexible. FOR se incrementa con el STEP WHILE requiere un contador Mtra. Faviola Vega. Introd. Computación
  • 3. Una forma más general que el FOR para realizar interacciones es el WHILE (mientras), el cual permite repetir una serie de instrucciones mientras una determinada expresión lógica sea verdadera. Su forma general utilizando pseudocódigo es la siguiente Mtra. Faviola Vega. Introd. Computación
  • 4. Mientras (expresión lógica) Instrucciones a repetir mientras la expresión lógica es verdadera Fin del Mientras Mtra. Faviola Vega. Introd. Computación
  • 5. Representación gráfica del While Mtra. Faviola Vega. Introd. Computación
  • 6. EJEMPLO Se muestra un algoritmo que empleando el WHILE escriba 5 veces el texto “Hola” INICIO Hacer i = 1 while (i<=5) imprime “Hola” i = i +1 Fin del While Fin Mtra. Faviola Vega. Introd. Computación
  • 7. Como pudo observarse en el ejemplo anterior para que el proceso iterativo llevado a cabo en el MIENTRAS no sea infinito, dentro de las instrucciones que se ejecutan en su interior se debe colocar una instrucción que modifique el valor de verdad en la expresión lógica. Mtra. Faviola Vega. Introd. Computación
  • 8. ACTIVIDAD • Ejemplo: Cuantas veces se escribe el texto “HOLA” al ejecutar los siguientes algoritmos: Mtra. Faviola Vega. Introd. Computación
  • 9. Se puede observar que para utilizar un WHILE se deben responder las siguientes preguntas: • 1.- En que valor inician la(s) variable(s) de control • 2.- Cuál es la condición de terminación? • 3.- Cómo se modifican la(s) variables(s) de control? Mtra. Faviola Vega. Introd. Computación
  • 10. Actividad convierte el siguiente Diagrama en algoritmo Mtra. Faviola Vega. Introd. Computación
  • 11. EJEMPLO Diseñar un algoritmo para escribir los números impares menores que 100 Inicio Variables ….. i=1 While (i<=100) Imprime i i = i +2 Fin del Mientras Fin Mtra. Faviola Vega. Introd. Computación
  • 12. ACTIVIDAD: Realiza la prueba de escritorio con el siguiente Algoritmo para los números 17, 25, 12, 865, 658, 1, 333 escribe los resultados y escribe su diagrama Encontrar el valor de P que cumple la siguiente ecuación: En otras palabras se pide contar cuantos números enteros positivos se pueden sumar, sin que su suma exceda 1000 Inicio .. i=0 suma = 0 While suma = 0 i=i+1 suma = suma + i Fin del While P = i -1 Imprime P Fin Mtra. Faviola Vega. Introd. Computación
  • 13. Recordemos el ejemplo de escribir los números del 1 al 5 con la instrucción FOR. FOR n = 1 TO 5 PRINT n NEXT Mtra. Faviola Vega. Introd. Computación
  • 14. Ahora veremos como se hace lo mismo usando la instrucción WHILE (Mientras). n=1 WHILE n <= 5 PRINT n n=n+1 WEND Esto lo que hace es ejecutar el bloque de instrucciones (Lo que hay entre el WHILE y el WEND) una y otra vez mientras se cumpla la condición del WHILE. Un poco más difícil que con el FOR. Mtra. Faviola Vega. Introd. Computación
  • 15. Se puede ver que el funcionamiento es parecido al del FOR, solo que aquí lo tenemos que controlar todo. Las dos reglas que dijimos sobre los contadores del FOR ya aquí no tienen sentido porque de hecho nosotros vamos a tener que incrementar el contador haciendo una asignación y una vez terminado podemos estar seguro del valor que tiene la variable. Mtra. Faviola Vega. Introd. Computación
  • 16. Una norma que sí conviene respetar (Aunque no siempre es necesario) es que la instrucción que incrementa el contador sea la última del bloque, ya que si está en otro sitio ejecutaremos unas instrucciones con un valor y las demás con el otro, con lo que nos podemos liar. Un error muy típico es que se nos olvide de poner la instrucción de incrementar el contador, produciendo un bucle infinito que hará que nuestro programa no termine nunca. Si un programa se bloquea es conveniente revisar esto. Mtra. Faviola Vega. Introd. Computación
  • 17. También puede pasar que no lleguemos a entrar al MIENTRAS porque la condición ya sea falsa la primera vez, por ejemplo: contador = 120 WHILE contador < 100 PRINT "Esto no se va a llegar a escribir nunca.” contador = contador + 1 Mtra. Faviola Vega. Introd. Computación
  • 18. ACTIVIDAD Usando la instrucción mientras hacer un algoritmo para un programa que imprima la serie 1, 3, 5, 7,9, realiza su diagrama de Flujo y su prueba de escritorio. Inicio Variable I Integer Leer i i =1 While i<=9 imprime i i =i+2 fin mientras Fin Mtra. Faviola Vega. Introd. Computación
  • 19. ACTIVIDAD 1.- Hacer un algoritmo para un programa que encuentre el primer entero que haga que la suma de la serie 1, 2, 3, 4, 5, 6, 7, 8,9,...; supere 30. Mtra. Faviola Vega. Introd. Computación
  • 20. Inicio variables i int num int leer num mientras num>1 hacer If num modulo 2 = 0 entonces num=num/2 de lo contrario num=num*3+1 imprimir num fin mientras Fin • El MODULO TOMA EL RESIDUO recuerda 5/2=2 y queda 1 EL RESIDUO ES EL QUE TOMA Mtra. Faviola Vega. Introd. Computación
  • 21. ACTIVIDAD • Hacer el algoritmo para un programa que calcule la suma de ciertos números ingresados por el teclado. El cálculo de la suma se hará en cualquier momento. Mtra. Faviola Vega. Introd. Computación
  • 22. ACTIVIDAD Escribir un algoritmo para un programa que imprima la siguiente tabla de temperaturas Fahrenheit y Celsius. Sugerencia F C 32 0 34 1,1111 36 2,2222 ... ... 100 37,778 Mtra. Faviola Vega. Introd. Computación
  • 23. Inicio variables fareng int cel int fareng 30 While fareng<=100 Cel=(fareng-32)*5/9 fareng=fare+2 imprimir fareng, cel Fin mientras Fin Mtra. Faviola Vega. Introd. Computación
  • 24. Inicio Variables x int Dame Numero; x Leer x While x<32000 y x<>0 hacer iF x>=0 y x<10 entonces imprimir x, "TIENE 1 CIFRA" Fin si If x>9 y x<100 entonces imprimir x, "TIENE 2 CIFRAS" Fin si IF x>99 y x<1000 entonces imprimir x, "TIENE 3 CIFRAS" Fin IF x>999 y x< 10000 entonces imprimir x, "TIENE 4 CIFRAS" Fin si IF x>9999 y x<=32000 entonces imprimir "TIENE 5 CIFRAS" Fin si Fin mientras Fin Mtra. Faviola Vega. Introd. Computación
  • 25. ACTIVIDAD Escriba el algoritmo para un programa en el que se pida al usuario ingresar 10 números enteros impares para sumarlos. Elabore el programa de manera que no se arruine si el usuario escribe algunos enteros pares. El programa debe salir del ciclo e imprimir la suma sólo cuando se hayan ingresado los 10 enteros impares. Mtra. Faviola Vega. Introd. Computación
  • 26. Inicio x int suma int c int while e(c<10) Leer x si x modulo 2 <>0 entonces suma suma+x c c+1 fin si Fin mientras imprimir suma Fin Mtra. Faviola Vega. Introd. Computación