Adloun

On exécute le programme de boucle donné en remarque dans le cours…

Exercice de TD · niveau 2 · NSI (première), chapitre 9 — Machines, systèmes et réseaux · Von Neumann et langage machine

Énoncé

On exécute le programme de boucle donné en remarque dans le cours, avec et .

Corrigé

1. Chaque CHARGE du début : une fois. Le test SAUTESI : fois ( fois pour entrer dans le corps, une sixième pour en sortir). SOUSTRAIT et SAUTE : fois chacun. RANGE : une fois. Total pas.

Contrôle : le test est toujours exécuté une fois de plus que le corps — c'est le test qui fait sortir. Avec , le corps n'est jamais exécuté et il reste pas.

2. . Le compteur a été décrémenté jusqu'à zéro, et c'est zéro qu'on range. La valeur n'apprend rien : ce programme ne calcule rien, il consomme un compteur. Une boucle utile ferait quelque chose dans son corps — accumuler, comparer, écrire.

3. Avec , le compteur descend de deux en deux.

Piège central : lire « tant que le compteur est positif » là où l'instruction dit « si le compteur vaut exactement zéro ». C'est le variant du chapitre 7 : il ne suffit pas qu'une quantité décroisse, il faut qu'elle atteigne la valeur testée. Un test d'inégalité aurait rendu le programme sûr pour tout pas.

Les autres exercices de ce chapitre Le cours du chapitre

Un blocage sur cet exercice ? Le tuteur d'Adloun guide par questions, sans donner la réponse.