Les commandes répétitives
Essayons maintenant d'écrire un programme qui fait avancer le robot dans un carré. Avancer dans une carré signifie : marche avant, tournant à 90 degrés, en avançant de nouveau, tournant à 90 degrés, etc Nous pourrions répéter la partie de code du dessus à quatre reprises, mais cela peut être fait beaucoup plus facilement avec l'instruction repeat.
#define MOVE_TIME 500
#define TURN_TIME 500
task main()
{
repeat(4)
{
OnFwd(OUT_AC, 75);
Wait(MOVE_TIME);
OnRev(OUT_C, 75);
Wait(TURN_TIME);
}
Off(OUT_AC);
}
Le nombre entre parenthèses de l'instruction repeat indique combien de fois le code à l'intérieur des accolades doit être répété. Notez que, dans le programme ci-dessus, nous avons également des déclarations indentées. Ce n'est pas nécessaire, mais il rend le programme plus lisible.
Comme dernier exemple, faisons faire 10 fois le tour au robot.
#define MOVE_TIME 500
#define TURN_TIME 500
task main()
{
repeat(10)
{
repeat(4)
{
OnFwd(OUT_AC, 75);
Wait(MOVE_TIME);
OnRev(OUT_C, 75);
Wait(TURN_TIME);
}
}
Off(OUT_AC);
}
Il ya maintenant une déclaration repeat dans l'autre repeat. Nous appelons cela une déclaration repeat "imbriquée". Vous pouvez imbriquer des déclarations repeat autant de fois que vous le souhaitez. Gardez un regard attentif sur les accolades et l'indentation du programme. La tâche commence à la première accolade et se termine à la dernière. La déclaration du premier repeat commence à la deuxième accolade et se termine à la cinquième. L'instruction repeat imbriquée commence à la troisième accolade et se termine à la quatrième. Comme vous le voyez les accolades viennent toujours par paires et le code entre les accolades est indenté.
Dostları ilə paylaş: |