bucle

¿Te gustaría aprender a Programar?
Tenemos los cursos que necesitas.¡Haz clic aquí!

Diferencias y semejanzas entre un tipo de instrucción de control repetitiva y otra

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:

diagrama

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:

diagrama2

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:

diagrama2

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.

Te esperamos en los siguientes artículos en donde hablaremos mas acerca de estos temas, los cuales hoy en día son de vital importancia en el mundo de la tecnología.

¿Te gustaría aprender a Programar?
Tenemos los cursos que necesitas.¡Haz clic aquí!
About Author

NGuerrero

0 0 votos
Article Rating
Suscribir
Notificar de
guest
0 Comments
Comentarios.
Ver todos los comentarios
0
¿Te gusta este articulo? por favor comentax
()
x
Abrir chat
¿Quieres aprender a programar?
Hola 👋,
¿Te interesa información de nuestros cursos?