Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Modifier le Comportement de la Boucle For en C++ | Boucle For
Boucles C++

bookModifier le Comportement de la Boucle For en C++

La boucle for traditionnelle en C++ constitue un moyen très efficace et expressif d’itérer sur une plage de valeurs, mais certaines situations requièrent un contrôle plus poussé sur le comportement de la boucle. Ce chapitre présente différentes techniques permettant de modifier et d’ajuster précisément vos boucles for.

Personnalisation de l’initialisation, de la condition et des instructions d’itération

Avant tout, il est important de noter qu’aucun des trois éléments de la structure de la boucle for n’est obligatoire. Chacun d’eux peut être omis, ce qui conduit au code suivant :

for.h

for.h

copy
1234
for (;;) { }

Étonnamment, cela fonctionne toujours ! Cette construction crée une boucle infinie, le code qu'elle contient s'exécutera indéfiniment tant que votre ordinateur restera allumé. En gardant cela à l'esprit, il est possible d'atteindre n'importe quel objectif simplement en expérimentant avec une boucle for.

Initialisation de plusieurs variables dans une boucle for

Cela peut être utile lorsque vous devez parcourir un tableau à la fois depuis le début et la fin simultanément. Par exemple, c'est pertinent pour vérifier si un mot est un palindrome.

main.cpp

main.cpp

copy
123456789101112
#include <iostream> int main() { std::string word = "radar"; for (int i = 0, j = word.length() - 1; i < j; ++i, --j) if (word[i] != word[j]) return 0; // Mismatch found std::cout << "The world is palindrome!"; }

Vous pouvez initialiser plusieurs variables, séparées par des virgules. Cela permet de déclarer et d'initialiser plusieurs variables avant d'entrer dans la boucle.

Différentes manières d'utiliser la condition dans une boucle for

Il est possible d'utiliser plusieurs conditions dans une boucle for afin de gérer des scénarios complexes où l'exécution de la boucle dépend de plusieurs facteurs. Par exemple, il est possible d'arrêter la boucle en fonction de la limite de l'indice et d'un indicateur externe.

main.cpp

main.cpp

copy
1234567891011121314151617181920
#include <iostream> int main() { // Simulated temperature readings (in Celsius) int size = 8; int temperatures[size] = {25, 27, 30, 33, 36, 40, 38, 42}; // Threshold for critical temperature const int criticalTemperature = 40; bool safe = true; // Temperatures until all are processed or a critical temperature is found for (int i = 0; i < size && safe; i++) if (temperatures[i] >= criticalTemperature) safe = false; // Stop loop if (!safe) std::cout << "The critical temperature was reached!"; }

Il existe plusieurs façons de structurer la condition dans une boucle for. Choisissez le type de condition qui correspond le mieux à la logique et aux exigences de votre programme. Chaque approche offre une flexibilité pour contrôler le comportement de la boucle.

Utilisation de mises à jour personnalisées ou multiples

Les mises à jour personnalisées ou multiples dans une boucle for permettent de modifier dynamiquement la ou les variables de boucle, ou d’effectuer des mises à jour complexes au-delà de l’incrémentation ou décrémentation standard. Cette flexibilité est particulièrement utile dans les situations où il est nécessaire de contrôler le flux de la boucle pour ignorer des éléments, parcourir plusieurs plages ou gérer des mises à jour conditionnelles.

main.cpp

main.cpp

copy
12345678910
#include <iostream> int main() { int size = 8; int values[size] = {1, 2, 3, 4, 5, 6, 7, 8}; for (int i = 0; i < size; i += 2) std::cout << "Value: " << values[i] << std::endl; }

Vous pouvez utiliser plusieurs instructions de mise à jour séparées par des virgules. L'utilisation de mises à jour personnalisées ou multiples permet de mieux contrôler les variables de contrôle de boucle et d'adapter la boucle aux besoins spécifiques de votre programme.

question mark

Quel est le but de la construction de boucle for suivante ?

Select the correct answer

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 2. Chapitre 3

Demandez à l'IA

expand

Demandez à l'IA

ChatGPT

Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion

Awesome!

Completion rate improved to 9.09

bookModifier le Comportement de la Boucle For en C++

Glissez pour afficher le menu

La boucle for traditionnelle en C++ constitue un moyen très efficace et expressif d’itérer sur une plage de valeurs, mais certaines situations requièrent un contrôle plus poussé sur le comportement de la boucle. Ce chapitre présente différentes techniques permettant de modifier et d’ajuster précisément vos boucles for.

Personnalisation de l’initialisation, de la condition et des instructions d’itération

Avant tout, il est important de noter qu’aucun des trois éléments de la structure de la boucle for n’est obligatoire. Chacun d’eux peut être omis, ce qui conduit au code suivant :

for.h

for.h

copy
1234
for (;;) { }

Étonnamment, cela fonctionne toujours ! Cette construction crée une boucle infinie, le code qu'elle contient s'exécutera indéfiniment tant que votre ordinateur restera allumé. En gardant cela à l'esprit, il est possible d'atteindre n'importe quel objectif simplement en expérimentant avec une boucle for.

Initialisation de plusieurs variables dans une boucle for

Cela peut être utile lorsque vous devez parcourir un tableau à la fois depuis le début et la fin simultanément. Par exemple, c'est pertinent pour vérifier si un mot est un palindrome.

main.cpp

main.cpp

copy
123456789101112
#include <iostream> int main() { std::string word = "radar"; for (int i = 0, j = word.length() - 1; i < j; ++i, --j) if (word[i] != word[j]) return 0; // Mismatch found std::cout << "The world is palindrome!"; }

Vous pouvez initialiser plusieurs variables, séparées par des virgules. Cela permet de déclarer et d'initialiser plusieurs variables avant d'entrer dans la boucle.

Différentes manières d'utiliser la condition dans une boucle for

Il est possible d'utiliser plusieurs conditions dans une boucle for afin de gérer des scénarios complexes où l'exécution de la boucle dépend de plusieurs facteurs. Par exemple, il est possible d'arrêter la boucle en fonction de la limite de l'indice et d'un indicateur externe.

main.cpp

main.cpp

copy
1234567891011121314151617181920
#include <iostream> int main() { // Simulated temperature readings (in Celsius) int size = 8; int temperatures[size] = {25, 27, 30, 33, 36, 40, 38, 42}; // Threshold for critical temperature const int criticalTemperature = 40; bool safe = true; // Temperatures until all are processed or a critical temperature is found for (int i = 0; i < size && safe; i++) if (temperatures[i] >= criticalTemperature) safe = false; // Stop loop if (!safe) std::cout << "The critical temperature was reached!"; }

Il existe plusieurs façons de structurer la condition dans une boucle for. Choisissez le type de condition qui correspond le mieux à la logique et aux exigences de votre programme. Chaque approche offre une flexibilité pour contrôler le comportement de la boucle.

Utilisation de mises à jour personnalisées ou multiples

Les mises à jour personnalisées ou multiples dans une boucle for permettent de modifier dynamiquement la ou les variables de boucle, ou d’effectuer des mises à jour complexes au-delà de l’incrémentation ou décrémentation standard. Cette flexibilité est particulièrement utile dans les situations où il est nécessaire de contrôler le flux de la boucle pour ignorer des éléments, parcourir plusieurs plages ou gérer des mises à jour conditionnelles.

main.cpp

main.cpp

copy
12345678910
#include <iostream> int main() { int size = 8; int values[size] = {1, 2, 3, 4, 5, 6, 7, 8}; for (int i = 0; i < size; i += 2) std::cout << "Value: " << values[i] << std::endl; }

Vous pouvez utiliser plusieurs instructions de mise à jour séparées par des virgules. L'utilisation de mises à jour personnalisées ou multiples permet de mieux contrôler les variables de contrôle de boucle et d'adapter la boucle aux besoins spécifiques de votre programme.

question mark

Quel est le but de la construction de boucle for suivante ?

Select the correct answer

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 2. Chapitre 3
some-alt