Inicio | Artículos | Biografías | Cursos | Entrevistas | Frases | Libros | Diccionario | Presentaciones | Servicios | Videos | Mapa Web | Enlazar | Contactar | Acerca de


CURSO/TUTORIAL DE ALGORITMOS
Introducción
¿Qué es un Algoritmo?
¿Qué es un Ordinograma?
Elementos Básicos
Tipos de Datos
Identificadores
Variables
Constantes
Operadores y Expresiones
Tipos de Datos Definidos por el Programador
Datos de Tipos Enumerados
Datos de Tipos Subrangos
Instrucciones Primitivas
Instrucción de Asignación
Instrucción de Salida
Instrucción de Entrada
Estructura de un Algoritmo
Partes de un Algoritmo
Cabecera
Declaraciones
Cuerpo
Sintaxis de un Algoritmo
Comentarios
Introducción a los Diagramas de Flujo
Asignación
Entrada y Salida
Inicio y Fin
Decisiones
Instrucciones de Control
Instrucciones Alternativas
Instrucciones Repetitivas
Instrucciones De Salto
Llamadas a Subalgoritmos
¿Qué es un Subalgoritmo?
Subprogramas
Procedimientos
Declaraciones Locales y Globales
Parámetros
Funciones
Representación mediante Diagramas de Flujo
CarlosPes.comCurso de Diseño de Algoritmos > Repetitiva Hacer...Mientras en Pseudocódigo

Instrucción Repetitiva Hacer...Mientras en Pseudocódigo

¿Qué es una instrucción de control repetitiva hacer...mientras?

En pseudocódigo, para escribir una instrucción repetitiva hacer...mientras se utiliza la sintaxis:
hacer
   <bloque_de_instrucciones>
mientras ( <expresión_lógica> )
Como se puede apreciar, la instrucción repetitiva hacer...mientras, también hace uso de una condición. En un bucle hacer...mientras, primero se ejecuta el bloque de instrucciones y, después, se evalúa la condición. En el caso de que ésta sea verdadera, se vuelve a ejecutar el bloque de instrucciones. Y así sucesivamente, hasta que, la condición sea falsa.

Por consiguiente, cuando el
flujo de un algoritmo llega a un bucle hacer...mientras, existen dos posibilidades:
  1. Se ejecuta el bloque de instrucciones y, después, si la condición se evalúa a falsa, el bloque de instrucciones no se vuelve a ejecutar, de manera que, el bucle hacer...mientras finaliza, habiendo realizado una sola iteración.
  2. Se ejecuta el bloque de instrucciones y, a continuación, si la condición se evalúa a verdadera, el bloque de instrucciones se vuelve a ejecutar. Y así sucesivamente, hasta que la condición sea falsa.
El <bloque_de_instrucciones> de un bucle hacer...mientras puede ejecutarse una o más veces (iteraciones). También hay que prevenir que el bucle no sea infinito.

En resumen, una instrucción repetitiva hacer...mientras permite ejecutar repetidamente (una o más veces) un bloque de instrucciones, mientras que, una determinada condición sea verdadera.

Ejemplo 1: De modo que, utilizando un bucle hacer...mientras, el problema del ejemplo del apartado "Variable Contador",se puede resolver con el código:
algoritmo Numeros_del_1_al_10

variables
   entero contador

inicio
   contador ← 1   /* Inicialización del contador */
   hacer
      escribir( contador )         /* Salida */
      contador ← contador + 1     /* Incremento */
   mientras ( contador <= 10 )     /* Condición */
fin
La traza del algoritmo es:
Traza de una Instrucción Repetitiva Hacer Mientras
Explicación de la traza:
  • En primer lugar, se le asigna el valor 1 a contador (acción 1).
  • A continuación, se ejecuta el bloque de instrucciones del bucle hacer... mientras, mostrándose por pantalla el valor de contador (acción 2) y, después, se incrementa en 1 el valor de la variable contador (acción 3).
  • Una vez ejecutado el bloque de instrucciones, se evalúa la condición de salida del bucle ( contador <= 10 ) (acción 4) y, puesto que, es verdadera, se ejecuta, de nuevo, el bloque de instrucciones.
  • Y así sucesivamente, mientras que, la condición sea verdadera, o dicho de otro modo, hasta que, la condición sea falsa.
  • En este algoritmo, el bloque de instrucciones del bucle se ejecuta diez veces (iteraciones).
Al igual que ocurre con la instrucción repetitiva mientras, cualquier pequeño descuido o error al escribir el código del algoritmo, puede dar lugar a que la instrucción repetitiva hacer...mientras no funcione correctamente.

Como ya se ha dicho, el bucle hacer...mientras puede iterar una o más veces, por tanto, cuando un bloque de instrucciones debe iterar al menos una vez, generalmente, es mejor utilizar un bucle hacer...mientras que un bucle mientras, como por ejemplo, en el siguiente problema.

Ejemplo 2: Se quiere diseñar el algoritmo de un programa que:

1º) Pida por teclado un número (dato entero).
2º) Pregunte al
usuario si desea introducir otro o no.
3º) Repita los pasos 1º y 2º, mientras que, el usuario no responda 'n' de (no).
4º) Muestre por pantalla la suma de los números introducidos por el usuario.

En pantalla:
Salida por pantalla de un programa que suma números enteros
Solución:
algoritmo Suma_de_numeros_introducidos_por_el_usuario

variables
   caracter seguir
     entero acumulador, numero

inicio
   /* En acumulador se va a guardar la suma
      de los números introducidos por el usuario. */

   acumulador ← 0
   hacer
      escribir( "Introduzca un número entero: " )
      leer( numero )
      acumulador ← acumulador + numero
      escribir( "¿Desea introducir otro número (s/n)?: " )
      leer( seguir )
   mientras ( seguir <> 'n' )
   /* Mientras que el usuario desee introducir
      más números, el bucle iterará. */

  escribir( "La suma de los números introducidos es: ", acumulador )
fin
Artículos Interesantes
Artículos de Desarrollo Web
Artículos de Informática
Artículos de Programación
Artículos de SEO
Cursos/Tutoriales de Informática
Curso/Tutorial de Algoritmos
Curso/Tutorial de Informática Básica
Curso/Tutorial de Ingeniería del Software
Curso/Tutorial de Lenguaje C
Curso/Tutorial de Marketing en Internet
Curso/Tutorial de Turbo Pascal
Curso/Tutorial de Representación de los Datos
Curso/Tutorial para Webmasters
Curso/Tutorial Web 2.0
Curso de SEO
Libros de Carlos Pes
36 Pasos Básicos para Desarrollar un Sitio Web
Empezar de Cero a Programar en Lenguaje C
Fundamentos del SEO
Libros Recomendados
Libros de Analítica Web
Libros de Desarrollo Web
Libros de Java
Libros de Lenguaje C
Libros de Marketing Online
Libros de Pascal (Turbo Pascal)
Libros de SEO
Libros de Visual Basic
Recursos de Informática
Diccionario de Informática
Ejercicios de Programación
Guías de uso de Software
Sintaxis de Lenguajes de Programación
Biografías
Entrevistas
Frases y Citas
Recursos Educativos
Presentaciones Educativas
Videos Educativos
Enlaces Web
Servicios
Desarrollo de Sitios Web
Diseño Web
Aplicaciones Web
Marketing Online
Formación y Conferencias
Consultoría
Acerca de Carlos Pes
Bibliotecas
Colaboradores
Contactar
Enlazar
Librerías
Perfiles en Internet
Mapa Web
Blog de Carlos Pes Blog de Carlos Pes
Google+ CarlosPes.Com en Google+
© 2006-2017 CarlosPes.com