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


ARTÍCULOS PARA LEER
Categorías
Desarrollo Web
Educación
Informática
Programación
SEO
CarlosPes.comArtículosProgramación > Bucle Hacer...mientras versus Bucle Repetir...hasta

Bucle Hacer...mientras versus Bucle Repetir...hasta

Mientras que, por ejemplo, en lenguaje C, se puede hacer uso de una instrucción repetitiva hacer...mientras, utilizándose la sintaxis:
do
{
   <bloque_de_instrucciones>
} while ( <expresión_lógica> );
En Pascal, se puede emplear un bucle repetir...hasta. La sintaxis es:
repeat
   <bloque_de_instrucciones>
until <expresión_lógica>;
La diferencia principal, entre ambos bucles, es que:

"un bucle
do...while permite ejecutar repetidamente (una o más veces) un bloque de instrucciones, mientras que, una determinada condición sea verdadera"

y, por otra parte,

"un bucle
repeat...until permite ejecutar repetidamente (una o más veces) un bloque de instrucciones, hasta que, una determinada condición sea verdadera."

Obsérvese que, en los
ordinogramas del Curso de Diseño de Algoritmos, se utiliza la sintaxis de una instrucción repetitiva hacer...mientras:
Instrucción repetitiva Hacer...mientras en Ordinogramas
Figura. Instrucción repetitiva "hacer...mientras".
La sintaxis utilizada se corresponde con la empleada en el pseudocódigo CEE (C En Español):
hacer
   <bloque_de_instrucciones>
mientras ( <expresión_lógica> )
De forma que, cuando se evalúe la <expesión_lógica> del bucle, SI ésta es verdadera, el <bloque_de_instrucciones> se vuelve a ejecutar. Y así sucesivamente, hasta que la condición sea falsa o, mientras que, NO sea verdadera.

En consecuencia, para un bucle
repetir...hasta podríamos utilizar la siguiente sintaxis en ordinogramas:
Instrucción repetitiva Repetir...Hasta en Ordinogramas
Figura. Instrucción repetitiva "repetir...hasta".
Fíjese que, donde poníamos SI, ahora escribimos NO, y al revés.

Ejemplo: Se quiere diseñar el algoritmo de un
programa que muestre por pantalla los primeros diez números naturales:
   1 2 3 4 5 6 7 8 9 10
Utilizando un bucle hacer...mientras, la solución en Pseudocódigo CEE puede ser:
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
De manera gráfica, se puede representar como se muestra a continuación:
Ejemplo instrucción repetitiva Hacer...mientras en Ordinograma
Su codificación en lenguaje C sería:
#include <stdio.h>

int main()
{
   int contador;

   printf( "\n   " );

   contador = 1;   /* Inicialización del contador */
   do
   {
      printf( "%d ", contador );   /* Salida */
      contador++;                  /* Incremento */
   } while ( contador <= 10 );     /* Condición */

   return 0;
}
No obstante, en Pascal, utilizando un bucle repeat...until, escribiríamos el siguiente código fuente:
program EJE13101;

uses Crt;

var Contador : Integer;

begin
   ClrScr;
   GotoXY( 4, 2 );

   Contador := 1; { Inicializacion del contador }
   repeat
      Write( Contador, ' ' );     { Salida }
      Contador := Contador + 1;   { Incremento }
   until Contador > 10;           { Condicion }
end.
Obsérvese que, la condición de salida del bucle en Pascal

Contador > 10

es la contraria a la que hemos empleado en lenguaje C

contador <= 10

Y así deberemos hacer siempre que queramos "convertir" un programa escrito en lenguaje C a Pascal, o al revés.

Si le ha gustado este artículo y desea incluirlo en su sitio web, puede hacerlo sin ningún problema, siempre y cuando cite como fuente del mismo a
www.carlospes.com

Acerca del Artículo

· Autor: Carlos Pes
· Sitio Web: www.carlospes.com
· Artículo añadido: 9 de marzo de 2008
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-2014 CarlosPes.com