Retour Suite
sylvainmahe.site LE SITE de Sylvain Mahé contact@sylvainmahe.site
Article : Sylvain Mahé contact@sylvainmahe.site Incrémenter des nombres avec Iteration L'incrémentation et la décrémentation de nombres en programmation est généralement très aisée, mais la classe Iteration intègre quelques automatismes qui vous aideront lors d'utilisations un peu plus élaborées. En effet avec la classe Iteration il est facile et transparent pour le programmeur d'incrémenter en boucle (avec "overflow", voir ci-dessous) un nombre entier avec une valeur d'incrément différente de 1, une valeur initiale (de départ), une valeur minimale (limite inférieure), et une valeur maximale (limite supérieure). Exemple d'utilisation de la classe Iteration : #include <Iteration.h> int main() { Iteration myIteration = Iteration (1, 9, 10, true); while (true) { //incrément de 3 : myIteration.increment (3); //myIteration.value est la valeur incrémentée, lors de cette première itération elle est égale à 2 } return 0; } Comme le montre l'exemple ci-dessus, si la valeur minimale est de 1 (paramètre MIN), la valeur de départ de 9 (paramètre START), la valeur maximale de 10 (paramètre MAX), et que la boucle est autorisée avec true (paramètre LOOP), alors un incrément de 3 donne après calcul la valeur résultante de 2, car ((9 + 3) - (10 - 1)) - 1 = 2. Les limites inférieure et supérieure peuvent être bloquantes ou passantes, ce qui autorise la boucle de la valeur incrémentée : La boucle tiens compte de la différence restante entre respectivement la valeur incrémentée et la limite supérieure autorisée, ou la valeur décrémentée et la limite inférieure fixée en paramètre. Un incrément négatif est une décrémentation. Exemple de décrémentation avec la classe Iteration : #include <Iteration.h> int main() { Iteration myIteration = Iteration (1, 9, 10, true); while (true) { //décrément de 3 : myIteration.increment (-3); //myIteration.value est la valeur décrémentée, lors de cette première itération elle est égale à 6 } return 0; } D'autres fonctions existent : - min : redéfini la limite inférieure.
- set : redéfini (ou force) la valeur de la variable value.
- max : redéfini la limite supérieure.
- loop : redéfini la possibilité d'incrémenter et de décrémenter en boucle.
- reset : réinitialise la valeur de la variable value à sa valeur de départ (initiée avec le paramètre START).
Récapitulatif des fonctions et variables de cette classe : signed long value = 0; Iteration (const signed long MIN, const signed long START, const signed long MAX, const bool LOOP); void increment (const signed long INCREMENT); void min (const signed long MIN); void set (const signed long VALUE); void max (const signed long MAX); void loop (const bool LOOP); void reset();