Bucle do while
El bucle do while comprova la condició de finalització al final del cos del bucle, i si aquesta és certa continua amb la resta del programa, de vegades això resulta més adequat que el bucle while o el bucle for.
Sintaxi
[modifica]La sintaxi en pseudocodi és la següent:
- El cos del bucle és el fragment de programa que serà repetit en cada iteració.
- La condició és una variable o una funció reduïble a valor booleà.
En llenguatges de programació
[modifica]En alguns llenguatges de programació s'escriu:
Do ... ... Loop While (condició)
Aquesta estructura de control sempre permet l'execució del cos del bucle si més no una vegada, i el finalitza quan la condició és certa.
Exemples
[modifica]Una situació típica en què resulta còmode l'ús d'aquesta sentència és la que es produeix quan en finalitzar cada iteració es pregunta a l'operador si vol continuar amb una altra nova. En aquests casos, el programa sempre realitza la primera iteració i segons la condició de sortida la repeteix. Un altre cas també típic són els filtres d'entrada de dades, on es comprova si el valor de l'entrada està en un rang de valors.
- Admet un nombre del 3 al 7, si no pregunta de nou
do { printf ("Escriu el nombre"); scanf ("%c", &nombre) } while (nombre> = 3) && (nombre <= 7)
Reemplaçable en gairebé tots els casos
[modifica]Dins de la programació estructurada, el bucle do while pot ser substituït per un bucle while, de la manera:
Fer (Cos del bucle) Mentre (condició)
Es pot escriure
(Cos del bucle) Fer NO (condició) (Cos del bucle) fine Fer
Aquests dos fragments de codi són equivalents, perquè tots dos presenten el mateix resultat en la majoria dels casos. De tota manera, el bucle do while és útil quan es volen fer les accions que estan dins del bucle almenys en una ocasió.