Programmation informatique - Boucles

Prenons une situation où vous souhaitez imprimer Hello, World!cinq fois. Voici un programme C simple pour faire de même -

#include <stdio.h>

int main() {
   printf( "Hello, World!\n");
   printf( "Hello, World!\n");
   printf( "Hello, World!\n");
   printf( "Hello, World!\n");
   printf( "Hello, World!\n");
}

Lorsque le programme ci-dessus est exécuté, il produit le résultat suivant -

Hello, World!
Hello, World!
Hello, World!
Hello, World!
Hello, World!

C'était simple, mais encore une fois, considérons une autre situation lorsque vous voulez écrire Hello, World!un millier de fois. Nous ne pouvons certainement pas écrire des instructions printf () mille fois. Presque tous les langages de programmation fournissent un concept appeléloop, qui aide à exécuter une ou plusieurs instructions jusqu'à un nombre de fois souhaité. Tous les langages de programmation de haut niveau fournissent diverses formes de boucles, qui peuvent être utilisées pour exécuter une ou plusieurs instructions à plusieurs reprises.

Écrivons le programme C ci-dessus à l'aide d'un while loop et plus tard, nous discuterons du fonctionnement de cette boucle

#include <stdio.h>

int main() {
   int i = 0;
   
   while ( i < 5 ) {
      printf( "Hello, World!\n");
      i = i + 1;
   }
}

Lorsque le programme ci-dessus est exécuté, il produit le résultat suivant -

Hello, World!
Hello, World!
Hello, World!
Hello, World!
Hello, World!

Le programme ci-dessus utilise un while loop, qui est utilisé pour exécuter un ensemble d'instructions de programmation comprises entre {....}. Ici, l'ordinateur vérifie d'abord si la condition donnée, c'est-à-dire la variable "a" est inférieure à 5 ou non et s'il trouve que la condition est vraie, alors le corps de la boucle est entré pour exécuter les instructions données. Ici, nous avons les deux instructions suivantes dans le corps de la boucle -

  • La première instruction est la fonction printf () , qui imprime Hello World!

  • La deuxième instruction est i = i + 1 , qui est utilisée pour augmenter la valeur de la variablei

Après avoir exécuté toutes les instructions données dans le corps de la boucle, l'ordinateur revient à while (i <5) et la condition donnée, (i <5), est vérifiée à nouveau, et la boucle est exécutée à nouveau si la condition est vraie. Ce processus se répète jusqu'à ce que la condition donnée reste vraie, ce qui signifie que la variable «a» a une valeur inférieure à 5.

Pour conclure, une instruction de boucle nous permet d'exécuter une instruction ou un groupe d'instructions plusieurs fois. Vous trouverez ci-dessous la forme générale d'une instruction de boucle dans la plupart des langages de programmation -

Ce didacticiel a été conçu pour présenter les concepts de base de la programmation aux non-programmeurs, discutons donc des deux boucles les plus importantes disponibles dans le langage de programmation C. Une fois que vous êtes clair sur ces deux boucles, vous pouvez choisir un didacticiel de programmation C ou un livre de référence et vérifier les autres boucles disponibles en C et leur fonctionnement.

La boucle while

UNE while loop disponible en langage de programmation C a la syntaxe suivante -

while ( condition ) {
   /*....while loop body ....*/
}

Le code ci-dessus peut être représenté sous la forme d'un organigramme comme indiqué ci-dessous -

Les points importants suivants doivent être notés à propos d'une boucle while -

  • Une boucle while commence par un mot-clé while suivi d'un condition entre ().

  • Suite à l'instruction while (), vous aurez le corps de la boucle entre accolades {...}.

  • Un corps de boucle while peut avoir une ou plusieurs lignes de code source à exécuter à plusieurs reprises.

  • Si le corps d'une boucle while n'a qu'une seule ligne, il est facultatif d'utiliser des accolades {...}.

  • Une boucle while continue d'exécuter son corps jusqu'à un conditionqui est vrai. Dès que la condition devient fausse, la boucle while sort et continue de s'exécuter à partir de l'instruction suivante immédiate après le corps de la boucle while.

  • Une condition est généralement une déclaration relationnelle, qui est évaluée à vrai ou faux. Une valeur égale à zéro est traitée comme fausse et toute valeur différente de zéro fonctionne comme vrai.

La boucle do ... while

Une boucle while vérifie une condition donnée avant d'exécuter les instructions données dans la partie du corps. La programmation C fournit une autre forme de boucle, appeléedo...whilecela permet d'exécuter un corps de boucle avant de vérifier une condition donnée. Il a la syntaxe suivante -

do {
   /*....do...while loop body ....*/
} 
while ( condition );

Le code ci-dessus peut être représenté sous la forme d'un organigramme comme indiqué ci-dessous -

Si vous allez écrire l'exemple ci-dessus en utilisant do...while boucle, alors Hello, World produira le même résultat -

#include <stdio.h>

int main() {
   int i = 0;
   
   do {
      printf( "Hello, World!\n");
      i = i + 1;
   }
   while ( i < 5 );
}

Lorsque le programme ci-dessus est exécuté, il produit le résultat suivant -

Hello, World!
Hello, World!
Hello, World!
Hello, World!
Hello, World!

L'instruction break

Quand le breakest rencontrée à l'intérieur d'une boucle, la boucle est immédiatement terminée et le contrôle du programme reprend à l'instruction suivante suivant la boucle. La syntaxe d'unbreak la déclaration en C est la suivante -

break;

UNE break instruction peut être représentée sous la forme d'un diagramme de flux comme indiqué ci-dessous -

Voici une variante du programme ci-dessus, mais elle sortira après l'impression de Hello World! seulement trois fois -

#include <stdio.h>

int main() {
   int i = 0;
   do {
      printf( "Hello, World!\n");
      i = i + 1;
      
      if( i == 3 ) {
         break;
      }
   }
   while ( i < 5 );
}

Lorsque le programme ci-dessus est exécuté, il produit le résultat suivant -

Hello, World!
Hello, World!
Hello, World!

La déclaration continue

le continue instruction en langage de programmation C fonctionne un peu comme le breakdéclaration. Au lieu de forcer la résiliation,continueforce l'itération suivante de la boucle à avoir lieu, en ignorant tout code intermédiaire. La syntaxe d'uncontinue la déclaration en C est la suivante -

continue;

UNE continue instruction peut être représentée sous la forme d'un diagramme de flux comme indiqué ci-dessous -

Voici une variante du programme ci-dessus, mais il sautera l'impression lorsque la variable a une valeur égale à 3 -

#include <stdio.h>

int main() {
   int i = 0;
   do {
      if( i == 3 ) {
         i = i + 1;
         continue;
      }
      printf( "Hello, World!\n");
      i = i + 1;
   }
   while ( i < 5 );
}

Lorsque le programme ci-dessus est exécuté, il produit le résultat suivant -

Hello, World!
Hello, World!
Hello, World!
Hello, World!

Boucles en Java

Voici le programme équivalent écrit en Java qui prend également en charge while et do...whileboucles. Le programme suivant imprimeHello, World! cinq fois comme nous l'avons fait dans le cas de la programmation C -

Vous pouvez essayer d'exécuter le programme suivant pour voir la sortie, qui doit être identique au résultat généré par l'exemple ci-dessus.

public class DemoJava {
   public static void main(String []args) {
      int i = 0;
   
      while ( i < 5 ) {
         System.out.println("Hello, World!");
         i = i + 1;
      }
   }
}

le break et continue Les instructions de la programmation Java fonctionnent de la même manière que celles de la programmation C.

Boucles en Python

Voici le programme équivalent écrit en Python. Python prend également en chargewhile et do...whileboucles. Le programme suivant imprimeHello, World!cinq fois comme nous l'avons fait dans le cas de la programmation C. Ici, vous devez noter que Python n'utilise pas d'accolades pour le corps de la boucle, mais identifie simplement le corps de la boucle en utilisant l'indentation des instructions.

Vous pouvez essayer d'exécuter le programme suivant pour voir la sortie. Pour montrer la différence, nous avons utilisé une autre instruction d'impression, qui sera exécutée lorsque la boucle sera terminée.

i = 0

while (i < 5):
   print "Hello, World!"
   i = i + 1
print "Loop ends"

Lorsque le programme ci-dessus est exécuté, il produit le résultat suivant -

Hello, World!
Hello, World!
Hello, World!
Hello, World!
Hello, World!
Loop ends

le break et continue Les instructions en Python fonctionnent de la même manière qu'en programmation C.