Exetat · Comptabilité

Algorithmique et programmation

3 items d'entraînement portent sur cette notion.

Toutes les notions de Comptabilité

Un programme est une recette que l'ordinateur suit à la lettre, instruction après instruction. L'Exetat demande de distinguer variable et constante, de connaître la structure d'un programme et surtout de « faire tourner à la main » un petit programme BASIC pour dire ce qu'il affiche.

L'essentiel

  • Une variable est une case de la mémoire, avec un nom, dont le contenu peut changer pendant le programme (un compteur, un total). Une constante a une valeur fixée une fois pour toutes (le taux de TVA 0,16, le nombre π). Ce n'est pas le type (nombre ou texte) qui les distingue : variable vient de « varier ».
  • Structure d'un programme bien construit : en-tête (nom du programme), déclarations des variables et constantes (on les réserve avant de s'en servir), corps (les instructions), fin (FIN ou END).
  • Instructions de base : affectation (ranger une valeur dans une variable : LET T = 0, ou T ← 0) ; lecture (INPUT : l'utilisateur tape une donnée) ; écriture (PRINT : afficher un résultat) ; test (IF condition THEN … ELSE …) ; boucle (répéter des instructions).
  • Affectation : dans T = T + 5, on calcule d'abord la partie droite avec l'ancienne valeur de T, puis on range le résultat dans T. Si T valait 10, il vaut maintenant 15.
  • Boucle FOR en BASIC : FOR I = début TO fin STEP pas … NEXT I. La variable I prend début, puis début + pas, et ainsi de suite tant qu'elle ne dépasse pas la fin ; la boucle tourne une fois par valeur. Sans STEP, le pas vaut 1.
  • Nombre de passages dans la boucle = partie entière de (fin − début) ÷ pas, plus 1. Exemple : FOR I = 2 TO 10 STEP 2 donne 2, 4, 6, 8, 10, soit 5 passages.
  • Les lignes d'un programme BASIC sont numérotées (10, 20, 30…) et s'exécutent dans l'ordre des numéros, sauf quand une boucle ou un saut renvoie ailleurs.

Les formules

Nombre de tours d'une boucle FOR
Tours = E[(fin − début) ÷ pas] + 1
E : partie entière ; si début ≤ fin et pas positif

La méthode

  1. 1Repère les variables et note leur valeur de départ.
  2. 2Fais un tableau de suivi : une colonne par variable, une ligne par passage dans la boucle.
  3. 3Écris la liste des valeurs prises par le compteur de la boucle (début, début + pas…, sans dépasser la fin).
  4. 4À chaque passage, applique les instructions dans l'ordre et mets à jour le tableau.
  5. 5À la fin, lis ce que le programme affiche (PRINT) et vérifie le nombre de passages avec la formule.

Un exemple résolu

Qu'affiche ce programme BASIC ? 10 TVA = 0.16 / 20 T = 0 / 30 FOR I = 1 TO 7 STEP 2 / 40 T = T + I * 1000 / 50 NEXT I / 60 PRINT T * (1 + TVA) / 70 END. Indique aussi quelle est la constante et quelles sont les variables.

  1. 1.TVA garde la valeur 0,16 du début à la fin : c'est une constante. T et I changent : ce sont des variables.
  2. 2.Valeurs de I : 1, 3, 5, 7 (la suivante, 9, dépasse 7). Contrôle : E[(7 − 1) ÷ 2] + 1 = 3 + 1 = 4 passages.
  3. 3.Passage 1 (I = 1) : T = 0 + 1 000 = 1 000.
  4. 4.Passage 2 (I = 3) : T = 1 000 + 3 000 = 4 000.
  5. 5.Passage 3 (I = 5) : T = 4 000 + 5 000 = 9 000.
  6. 6.Passage 4 (I = 7) : T = 9 000 + 7 000 = 16 000.
  7. 7.Ligne 60 : affichage de 16 000 × 1,16 = 18 560.

Réponse : Le programme affiche 18560. TVA est une constante ; T et I sont des variables ; la boucle tourne 4 fois.

Les pièges à éviter

  • Compter les tours d'une boucle avec la valeur finale (10 tours pour TO 10) ou avec fin − début + 1 en oubliant le pas : écris la liste des valeurs du compteur.
  • Inverser variable et constante : la constante ne change jamais, la variable peut changer.
  • Dans T = T + I, utiliser la nouvelle valeur de T à droite : on calcule toujours avec l'ancienne valeur.
  • Placer le corps du programme avant les déclarations : une variable doit être déclarée avant d'être utilisée.

À retenir

Une variable varie, une constante reste ; pour lire un programme, suis chaque variable dans un tableau, passage après passage.