Publicité

Lorsque vous apprenez à programmer Comment apprendre la programmation sans stressPeut-être que vous avez décidé de poursuivre la programmation, que ce soit pour une carrière ou simplement comme passe-temps. Génial! Mais peut-être que vous commencez à vous sentir dépassé. Pas si bien. Voici de l'aide pour faciliter votre voyage. Lire la suite , comprendre les éléments de base est la clé du succès précoce. Vous aborderez les sujets difficiles plus tard, mais si vous ne comprenez pas les types de variables, les boucles et les fonctions, il est difficile d'aller loin.

La plupart des nouveaux programmeurs apprennent instructions if-else, tandis que les boucles, et pour boucles avant longtemps. Mais l'un des types de boucles que vous pourriez ne pas comprendre est le boucle do-while. Voyons comment cette boucle fonctionne, quand vous voudrez l'utiliser, et regardons quelques exemples.

Les bases

Une boucle do-while exécute un bloc de code au moins une fois, vérifie si une condition est vraie, puis continue d'exécuter le code à l'intérieur en fonction de la condition.

instagram viewer
Jetons un œil à un exemple de pseudocode simple (car ils vous aident à apprendre! 10 exemples de base de Python qui vous aideront à apprendre rapidementCet article d'exemples de base en python est destiné à ceux qui ont déjà une certaine expérience en programmation et qui souhaitent simplement passer à Python le plus rapidement possible. Lire la suite ):

do {output "La variable x est égale à" + x; x ++; } while (x <5); sortie "La boucle est terminée."; 

Dans ce morceau de code, les lignes à l'intérieur du faire les parenthèses s'exécutent toujours au moins une fois. Cela signifie que X pourrait être n'importe quelle valeur au début de la boucle.

Si X est égal à 1 au début de la boucle, il se répétera jusqu'à X ne remplit pas la condition à côté de tandis que. Ainsi, il fonctionnerait au total 5 fois. Quand X n'est pas inférieur à 5, la boucle se termine et continue sur le code après. Cette sortie se présenterait comme suit:

La variable x est égale à 1 La variable x est égale à 2 La variable x est égale à 3 La variable x est égale à 4 La variable x est égale à 5 La boucle est terminée.

Inversement, si X était égal à 20 lorsque cette boucle a commencé, elle ne s'exécutait qu'une seule fois. Donc, vous verriez une déclaration de sortie, X incréments à 21, et la boucle se terminerait parce que 21 n'est pas inférieur à 5. Sa sortie serait:

La variable x est égale à 20 La boucle est terminée. 

Contraste avec les boucles While et For

Comment un faire pendant boucle diffère des autres boucles? La distinction la plus importante est que les boucles do-while testent une condition après exécution d'un bloc de code, tandis que d'autres boucles vérifient une condition avant exécuter le code à l'intérieur.

Considérez ce pseudocode de base tandis que boucle de comparaison:

x = 10; while (x <5) {sortie "La boucle s'est exécutée!"; x ++; }

Ici, X est défini sur 10 et tandis que boucle vérifie que X est inférieur à 5 avant de s'exécuter. Pour cette raison, le code à l'intérieur ne s'exécute jamais. L'application de la même logique à une boucle do-while nous donne quelque chose comme ceci:

x = 10; do {output "La boucle s'est exécutée!"; x ++; } while (x <5)

Cette boucle affichera le texte une fois, incrémentera X, puis continuez.

Notez que vous pouvez recréer la fonctionnalité do-while avec une instruction supplémentaire devant un tandis que boucle, comme ceci:

sortie "Bonjour!"; x ++; while (x <5) {sortie "Bonjour!"; x ++; }

Cependant, c'est maladroit et il n'y a aucune raison de le faire lorsque des boucles do-while existent.

Pour les boucles

Les boucles Do-while ont une distinction similaire avec pour boucles. UNE pour loop définit une variable, spécifie la durée d'exécution de la boucle et définit un comportement pour la fin de chaque itération.

Voici un simple pour boucle de comparaison:

pour (int i = 0; i <5; i ++) {sortie "La boucle s'est exécutée" + i + "fois."; }

Cela met en évidence un bon contraste entre faire pendant et pour boucles - vous savez exactement combien de fois pour La boucle s'exécutera car vous avez configuré les conditions au début. Si vous modifiez le code ci-dessus dans une boucle do-while comme ceci:

do {output "La boucle s'est exécutée" + i + "fois."; i ++; } while (i <5); 

Vous pourriez vous retrouver avec un problème lors de l'exécution de la boucle. Si vous n'avez pas initialisé je ailleurs, vous ne savez pas quelle sera sa valeur lorsque le faire partie s'exécute - et il s'exécutera au moins une fois. Si je était de 500 lorsque cette boucle a fonctionné, la sortie ici serait inexacte.

En résumé:

  • UNE boucle do-while est utile lorsque vous souhaitez exécuter une commande au moins une fois, et continuellement jusqu'à ce qu'une condition soit fausse.
  • UNE en boucle vous permet de répéter un bloc de code tant qu'une condition est vraie et de s'arrêter dès que la condition n'est plus vraie.
  • UNE pour boucle vous permet de spécifier exactement combien de fois la boucle doit s'exécuter en définissant vos propres paramètres.

Laisser une boucle Do-While

Bien sûr, vous devez avoir une condition de sortie pour les boucles do-while comme les autres. Sinon, vous pourriez vous retrouver avec une boucle infinie. Considérez l'extrait de code suivant:

x = 5; do {output "Cela ne finit jamais!"; } while (x <10); 

Si vous n'augmentez pas X n'importe où ailleurs dans le code, cette boucle s'exécutera pour toujours. Maintenant, des boucles infinies sont parfois utiles parce que le programmeur configure du code pour sortir de la boucle ailleurs. Mais le plus souvent, les codeurs novices se heurtent à des boucles infinies par accident Les 10 pires erreurs de programmation de l'histoireDans son passé légendaire, codant également la destruction provoquée. Des exemples d'un peu de mauvais code ont provoqué une catastrophe à un niveau majeur. Voici 10 des pires erreurs de programmation de l'histoire. Lire la suite .

Voici un exemple de boucle infinie appropriée. Disons que vous êtes concevoir un jeu 5 outils logiciels de développement de jeux gratuits pour créer vos propres jeuxUn logiciel de développement de jeux gratuit est un excellent moyen de commencer à créer des jeux vidéo. Nous avons compilé le meilleur logiciel de jeu sur le marché. Lire la suite où l'utilisateur lance un dé et doit obtenir un 6 pour quitter le port d'attache. Vous voulez continuer à lancer le dé jusqu'à ce qu'il tombe sur 6, et vous devez évidemment lancer au moins une fois. Ainsi, vous pouvez utiliser ce code:

do {int roll = random (1, 2, 3, 4, 5, 6); if (roll == 6) break; } while (true); 

le tandis que (vrai) condition signifie que cette boucle s'exécutera pour toujours, ce que nous voulons car l'utilisateur doit rouler jusqu'à ce qu'il obtienne un 6. Sans le Pause déclaration, il resterait coincé. Mais une fois que l'utilisateur obtient un 6, le si devient vraie, et la séquence sort de la boucle et passe à ce qui est après.

Vous n'avez pas besoin d'utiliser une déclaration de rupture si vous ne le souhaitez pas. En fait, il est probablement préférable d’éviter les instructions de pause si vous le pouvez. Ils rendent votre code plus difficile à maintenir, et se terminer par une condition est plus facile à suivre. Ainsi, le code modifié ci-dessous atteint le même objectif:

do {int roll = random (1, 2, 3, 4, 5, 6); } while (lancer! = 6); 

Une mauvaise boucle infinie

Une boucle infinie que vous avez un plan de sortie est très bien. Mais parfois, vous créerez accidentellement une boucle infinie, comme dans l'exemple ci-dessous:

int x = 7; faire {x = 1; x = x + 2; sortie "x est égal" + x; } while (x <10); 

Cela pourrait ressembler à des incréments X par 2 chaque boucle et se répète jusqu'à ce que x ne soit pas inférieur à 10, mais regardez de plus près. Parce que la boucle définit X égal à 1 chaque fois qu'il s'exécute, c'est une boucle infinie. Remarquerez que x = 1 et x = x + 2 signifie que X est toujours 3 à la fin du bloc, peu importe le nombre de fois que cela s'exécute, ce qui signifie X n'est jamais inférieur à 10.

Surveillez les instructions dans votre boucle qui modifient involontairement une variable à chaque exécution pour éviter des situations comme celle-ci.

Exemples du monde réel

Nous avons examiné quelques exemples hypothétiques ci-dessus, mais jetons un coup d'œil à quelques exemples utiles de boucles de simulation.

Si vous créez une boucle pour lire les données d'un fichier jusqu'à la fin, vous utiliserez une boucle do-while. Évidemment, vous devez saisir au moins un caractère si vous prévoyez de lire à partir d'un fichier, vous pouvez donc utiliser une boucle do-while comme celle-ci (grâce à l'utilisateur de Stack Exchange Steven Burnap pour cet exemple):

do {result = readData (buffer); } while (résultat! = EOF); 

Sans délai, vous devez utiliser une solution légèrement plus laide:

while (true) {result = readData (buffer); if (result == EOF) break; }

Un autre exemple consiste à récupérer les entrées d'un utilisateur. Supposons que vous écrivez un programme qui demande à l'utilisateur d'entrer un nombre positif. En utilisant un do-while, vous pouvez vous assurer que leur entrée est appropriée:

do {output "Veuillez saisir un nombre positif:"; int input = getInput (); } while (entrée <0); 

Avec cette boucle, l'utilisateur voit l'invite à saisir un nombre et saisit une valeur une fois. S'ils entrent un nombre négatif, la boucle recommence et ils sont invités à entrer un nombre positif jusqu'à ce qu'ils se conforment. D'autres boucles n'ont tout simplement pas de sens pour ce type d'action.

Boucles Do-While prêtes à l'emploi?

Nous avons effectué une enquête sur les boucles do-while, y compris leurs principes de base, comment les utiliser au mieux et comment elles se comparent aux autres boucles. Si vous ne vous souvenez de rien d'autre de cet article, sachez que les boucles do-while sont lorsque vous devez exécuter quelque chose au moins une fois, mais que vous ne savez pas combien de fois vous en aurez besoin avant de lancer la boucle.

Pensez à des situations comme celle-ci dans vos programmes et vous trouverez facilement des endroits où les boucles do-while s’adaptent. Presque tout les meilleures langues pour débutants 6 langages de programmation les plus faciles à apprendre pour les débutantsApprendre à programmer, c'est tout autant trouver le bon langage que le processus d'édification. Voici les six premiers langages de programmation les plus simples pour les débutants. Lire la suite supporte les boucles do-while, vous ne devriez donc pas avoir de problème pour les implémenter.

Si vous apprenez les bases, assurez-vous de passer en revue nos astuces pour maîtriser un nouveau langage de programmation 7 astuces utiles pour maîtriser un nouveau langage de programmationIl est normal d'être dépassé lorsque vous apprenez à coder. Vous oublierez probablement des choses aussi vite que vous les apprenez. Ces conseils peuvent vous aider à mieux conserver toutes ces nouvelles informations. Lire la suite .

À quelles autres situations pouvez-vous penser où un do-while est logique? Discutez et faites-nous savoir si vous utilisez des boucles do-while dans vos programmes dans la section des commentaires!

Crédit d'image: Aaban via Shutterstock.com

Ben est rédacteur en chef adjoint et directeur de la publication sponsorisée chez MakeUseOf. Il est titulaire d'un B.S. en systèmes d'information informatique du Grove City College, où il est diplômé Cum Laude et avec distinction dans sa majeure. Il aime aider les autres et se passionne pour les jeux vidéo en tant que médium.