Bucle while

De Wikipedia, la enciclopedia libre
Esta es una versión antigua de esta página, editada a las 17:59 21 sep 2015 por Jarould (discusión · contribs.). La dirección URL es un enlace permanente a esta versión, que puede ser diferente de la versión actual.
Diagrama de bucle While.

El Bucle while o bucle mientras es una estructura de la mayoría de los lenguajes de programación estructurados cuyo propósito es repetir un bloque de código mientras una condición se mantenga verdadera.

Sintaxis

La sintaxis en pseudocódigo es la siguiente:

Condición

La condición ha de ser una sentencia que devuelva un valor booleano, y esta puede ser el valor booleano en sí, verdadero(true) si la condición se cumple, o falso si esta no se cumple(false). También puede contener el nombre de una variable booleana, y el valor de la expresión dependerá de su contenido. Se debe tener en cuenta que además de las variables también puede haber llamadas a funciones que devuelvan un valor.

Sentencias Comparativas

La forma más obvia tal vez, y la más usada sin duda, son las sentencias comparativas, que usan los operandos igual, diferente, menor o igual, mayor o igual, menor y mayor. En el caso del lenguaje C, se utilizan los siguientes símbolos para representar las comparaciones anteriores: ==, !=, <=, >=, <, >,

Particularidades de lenguajes

En algunos lenguajes, se pueden utilizar variables no booleanas en la comparación: Por ejemplo, si la variable vale 0 será como si la condición no se cumpliera, y siempre que sea diferente de 0, se considerará que la condición se cumple.

Ejemplo (usando sintaxis de C)

#include <stdio.h>
int main(){
     int tecla = 0;
     while(tecla == 0){
          cin<<mostrar_letra<<tecla<<endl; /* Leemos el numero ingresado */
     }
}

En este ejemplo el programa va a leer la pulsación de una tecla mientras su valor sea igual a cero, en el momento en el que se pulse una Tecla distinta, se detendrá.

Ejemplo (usando el lenguaje Lexico)

Genera y muestra los primeros 10 números naturales:

tarea
{
   el objeto número_natural es una cantidad
   copie 0 en número_natural
   mientras número_natural < 10 haga:
   {
       copie número_natural + 1 en número_natural
       muestre número_natural
   }
}

Véase también