Module: cycles. Boucle avec paramètre (for)


Problem

1/17

Boucles dans la programmation

Theory Click to read/hide

Imaginez une situation où nous devons afficher le même mot à l'écran, disons le mot "BONJOUR", 10 fois. Que devons-nous faire ?
Vous pouvez prendre et écrire la commande 10 fois writeln('HELLO');

Mais que se passe-t-il si vous n'avez pas besoin de 10 fois, mais de 20, 30, 40 fois ?, et si 200 fois ? Dans ce cas, la copie prendra beaucoup de temps. Et s'il est nécessaire que l'utilisateur puisse choisir combien de fois afficher les informations à l'écran ? 

Pour faire face à cette tâche, nous pouvons utiliser une construction spéciale appelée LOOP

Une boucle est une construction algorithmique dans laquelle une certaine séquence de commandes est répétée plusieurs fois.


Dans le langage de programmation Pascal, il existe deux types de boucles : une boucle avec une variable (for) et une boucle avec une condition (while)

Commençons notre connaissance des cycles du premier type.

BOUCLE AVEC UNE VARIABLE OU AVEC UN NOMBRE DE PAS CONNU (POUR)

Il arrive souvent que nous connaissions le nombre de répétitions de certaines actions, ou que nous puissions calculer le nombre de répétitions à l'aide des données que nous connaissons. Certains langages de programmation ont une commande qui en russe ressemble à REPEAT (nombre de fois) - c'est-à-dire que nous pouvons spécifier le nombre exact de répétitions. 

Il est intéressant de voir comment ce cycle fonctionne au niveau de la machine :
1. une certaine cellule de mémoire est allouée en mémoire et le nombre de répétitions y est écrit,
2. lorsque le programme exécute une fois le corps de la boucle, le contenu de cette cellule (compteur) est décrémenté de un.
3. l'exécution de la boucle se termine lorsque cette cellule vaut zéro.

Dans le langage de programmation Pascal, il n'y a pas une telle construction, mais il y a une construction for.  

La forme générale de l'instruction de boucle for est la suivante : pour *valeur de début* à *valeur de fin* faire commencer /*une instruction ou un bloc d'instructions - corps de la boucle*/; fin ; Cette construction nécessite que nous
1. allouer explicitement une cellule mémoire, qui sera un compteur, et fixer sa valeur initiale
2. Spécifiez comment la valeur de cette cellule va changer.
3. une condition a été écrite sous laquelle le corps de la boucle sera exécuté

Dans la partie pratique, nous essaierons d'afficher le mot Hello 10 fois. Dans les tâches suivantes, nous analyserons cette construction plus en détail.

Problem

Le programme suivant affiche le mot Hello 10 fois.
Veuillez noter que nous avons complété 3 étapes nécessaires

1. allouer explicitement une cellule mémoire qui sera un compteur et y mettre la valeur initiale  - i := 1 
2. indiqué comment la valeur dans la cellule donnée changera  - en - après l'exécution du corps de la boucle, la valeur de la variable i augmentera de 1
3. enregistré la dernière valeur à laquelle le corps du cycle sera exécuté - 10   - le corps de la boucle (commande writeln) sera exécuté tant que i est inférieur ou égal à 10

EXÉCUTER LE PROGRAMME, ASSUREZ-VOUS QU'IL AFFICHE LE MOT "Bonjour" 10 fois