| Les candidats doivent être capables de : | Notes et orientations |
|---|---|
| 1 Déclarer et utiliser des variables et des constantes | |
| 2 Comprendre et utiliser les types de données de base | • Y compris : – entier – réel – char – chaîne – Booléen |
| 3 Comprendre et utiliser les entrées et les sorties | |
| 4 (a) Comprendre et utiliser le concept de séquence | |
| (b) Comprendre et utiliser le concept de sélection | • Y compris : – instructions IF – instructions CASE |
| (c) Comprendre et utiliser le concept d'itération | • Y compris : – boucles contrôlées par compteur – boucles à précondition – boucles à postcondition |
| (d) Comprendre et utiliser les concepts d'accumulation et de comptage | |
| (e) Comprendre et utiliser le concept de gestion des chaînes | • Y compris : – longueur – sous-chaîne – majuscules – minuscules • Le premier caractère de la chaîne peut être à la position zéro ou un |
| (f) Comprendre et utiliser les opérateurs arithmétiques, relationnels et logiques | • Arithmétiques, limités à : – + – – – / – * – ^ (élévé à la puissance) – MOD – DIV • Relationnels, limités à : – = – < – <= – > – >= – <> (différent de) • Logiques, limités à : – AND – OR – NOT |
| 5 Comprendre et utiliser les instructions imbriquées | • Y compris la sélection imbriquée et l'itération imbriquée • Les candidats ne seront pas tenus d'écrire plus de trois niveaux d'instructions imbriquées |
| 6 (a) Comprendre ce que signifient les procédures, les fonctions et les paramètres (b) Définir et utiliser des procédures et des fonctions, avec ou sans paramètres (c) Comprendre et utiliser les variables locales et globales | • Les procédures et les fonctions peuvent avoir jusqu'à trois paramètres |
| 7 Comprendre et utiliser les routines de bibliothèque | • Y compris : – MOD – DIV – ROUND – RANDOM |
| 8 Comprendre comment créer un programme maintenable | • Y compris l'utilisation appropriée de : – identifiants significatifs – la fonction de commentaires fournie par le langage de programmation – procédures et fonctions – commentaire pertinent et approprié de la syntaxe • Utiliser des identifiants significatifs pour : – variables – constantes – tableaux – procédures et fonctions |
Programmation
Informatique IGCSE · Sujet 8
13:11
Programmation
Voici un court programme. Il lit cinq notes de test et affiche le total. Les cinq notes sont huit, neuf, sept, six et dix, donc le total devrait être quarante. Regardez…
Narration en anglais · sous-titres en anglais et en 中文 au choix
8.1
Variables and constants
Programme
Source : Programme Cambridge International
Une variable est un espace nommé contenant une valeur qui peut changer pendant l'exécution du programme. Une constante est un espace nommé dont la valeur est fixée et ne change pas.


Vous devez les déclarer (donner leur nom et leur type) avant de les utiliser :
DECLARE Score : INTEGER
DECLARE Name : STRING
CONSTANT Pi ← 3.142

Utilisez une constante pour une valeur qui ne change jamais (comme Pi), afin qu'elle soit définie à un seul endroit et facile à lire.
Variables et affectation
Parcourez les lignes et regardez chaque variable prendre sa nouvelle valeur.
| English | Français |
|---|---|
| variable/ˈveərɪəbl/ | variable |
| constant/ˈkɒnstənt/ | constante |
| declare/dɪˈkleə/ | déclarer |
| integer/ˈɪntɪdʒə/ | entier |
| string/strɪŋ/ | chaîne |
8.1
Types de données
Un type de données indique quel type de valeur contient une variable. Vous devez connaître cinq types de base.

| Type | Holds | Example |
|---|---|---|
| entier | un nombre sans décimales | 42, -7 |
| réel | un nombre comportant une virgule décimale | 3.14, -0.5 |
| caractère | un seul caractère | 'A', '?' |
| chaîne | une séquence de caractères | "Hello" |
| Booléen | l'une de deux valeurs | TRUE ou FALSE |
| English | Français |
|---|---|
| data type/ˈdeɪtə taɪp/ | type de données |
| real/rɪəl/ | réel |
| char/tʃɑː/ | caractère |
| Boolean/ˈbuːlɪən/ | valeur booléenne |
8.1
Entrée et sortie
Entrée lit une valeur auprès de l'utilisateur. Sortie affiche une valeur à l'écran.
OUTPUT "What is your name?"
INPUT Name
OUTPUT "Hello ", Name
| English | Français |
|---|---|
| input/ˈɪnpʊt/ | entrée |
| output/ˈaʊtpʊt/ | sortie |
8.1
Les trois structures de base
Chaque programme est construit à partir de trois structures de contrôle.

Sequence
Séquence signifie que les étapes s'exécutent les unes après les autres, par ordre, de haut en bas.
INPUT Length
INPUT Width
Area ← Length * Width
OUTPUT Area
Selection
Sélection choisit quelles étapes exécuter, selon une condition. Utilisez une instruction IF, ou une instruction CASE lorsqu'il y a plusieurs choix.
IF Score >= 50
THEN
OUTPUT "Pass"
ELSE
OUTPUT "Fail"
ENDIF
CASE OF Grade
'A' : OUTPUT "Excellent"
'B' : OUTPUT "Good"
OTHERWISE OUTPUT "Keep trying"
ENDCASE
Iteration
Itération (boucle) répète des étapes. Il existe trois types.
Une boucle comptée se répète un nombre fixe de fois :
FOR I ← 1 TO 5
OUTPUT "Hello"
NEXT I
Une boucle à précondition vérifie la condition avant chaque répétition, elle peut donc ne jamais s'exécuter :
WHILE Answer <> "stop" DO
INPUT Answer
ENDWHILE
Une boucle à postcondition vérifie la condition après chaque répétition, elle s'exécute donc toujours au moins une fois :
REPEAT
INPUT Password
UNTIL Password = "secret"

Comment une structure IF … ELSE IF décide
Les conditions sont testées de haut en bas ; la PREMIÈRE qui est vraie s'exécute et les autres sont ignorées. Faites glisser la note et regardez quelle branche s'allume.
Sélection
Modifiez la valeur et observez quelle branche s'exécute — la sélection en action.
| English | Français |
|---|---|
| sequence/ˈsiːkwəns/ | séquence |
| selection/sɪˈlekʃn/ | sélection |
| iteration/ˌɪtəˈreɪʃn/ | itération |
| loop/luːp/ | boucle |
| count-controlled loop/kaʊnt kənˈtrəʊld luːp/ | boucle contrôlée par compteur |
| pre-condition loop/priː kənˈdɪʃn luːp/ | boucle à condition préalable |
| post-condition loop/pəʊst kənˈdɪʃn luːp/ | boucle à condition postérieure |
| length/leŋθ/ | longueur |
8.1
Totaliser et compter
- accumulation — additionner continuellement des valeurs à un total courant :
Total ← Total + Value. - comptage — ajouter 1 à un compteur à chaque itération :
Count ← Count + 1.


Total ← 0
FOR I ← 1 TO 10
INPUT Mark
Total ← Total + Mark
NEXT I
OUTPUT Total
Worked example. Un programme doit lire 5 notes, puis afficher le total et la moyenne.
Total ← 0
FOR I ← 1 TO 5
INPUT Mark
Total ← Total + Mark
NEXT I
Average ← Total / 5
OUTPUT Total, Average
Deux lignes transportent les notes. Total ← 0 doit être placé avant la boucle : si vous le mettez à l'intérieur, le total est réinitialisé à chaque passage, donc le programme n'affiche que la dernière note. Et Average ← Total / 5 doit être placé après la boucle, car le total n'est pas complet tant que toutes les notes n'ont pas été ajoutées. Initialiser avant, calculer après — cet ordonnancement est ce que la question teste réellement.
| English | Français |
|---|---|
| totalling/ˈtəʊtəlɪŋ/ | accumulation |
| counting/ˈkaʊntɪŋ/ | comptage |
| remainder/rɪˈmeɪndə/ | reste |
| nested statement/ˈnestɪd ˈsteɪtmənt/ | instruction imbriquée |
8.1
Opérateurs
Arithmetic operators
| Opérateur | Sens |
|---|---|
+ - * / |
addition, soustraction, multiplication, division |
^ |
élevé à la puissance |
MOD |
le reste après une division |
DIV |
la partie entière d'une division |
Par exemple, 17 MOD 5 est 2, et 17 DIV 5 est 3.
Relational operators
Ces opérateurs comparent deux valeurs et donnent un résultat booléen : =, <, <=, >, >=, et <> (différent de).
Logical operators
Ces opérateurs joignent des conditions : AND (les deux doivent être vraies), OR (au moins une doit être vraie), NOT (inverse vrai/faux).

IF Age >= 13 AND Age <= 19
THEN
OUTPUT "Teenager"
ENDIF
SUBSTRING : prendre une partie d'une chaîne
Le premier caractère est à la position 1. SUBSTRING(Mot, Début, Longueur) prend Length caractères commençant à Start — faites glisser les deux poignées et lisez l'appel qu'il construit.
8.1
Traitement des chaînes
Une chaîne est composée de caractères. Opérations utiles :

- longueur — le nombre de caractères dans la chaîne ;
- sous-chaîne — une partie plus petite extraite de la chaîne ;
- majuscule — convertir les lettres en majuscules ;
- minuscule — convertir les lettres en minuscules.
name ← "Computer"
OUTPUT LENGTH(name) // 8
OUTPUT SUBSTRING(name, 1, 4) // "Comp"
OUTPUT UCASE(name) // "COMPUTER"
OUTPUT LCASE(name) // "computer"
(Le premier caractère peut être compté comme position 0 ou position 1, selon le langage.)
En pseudo-code d'examen, le premier caractère est à la position 1, et SUBSTRING(name, start, length) extrait length caractères à partir de start.
Exemple résolu. Afficher le nom de famille à partir d'un nom complet tel que "Ada Lovelace".
FullName ← "Ada Lovelace"
Position ← 0
FOR I ← 1 TO LENGTH(FullName)
IF SUBSTRING(FullName, I, 1) = " "
THEN
Position ← I
ENDIF
NEXT I
OUTPUT SUBSTRING(FullName, Position + 1, LENGTH(FullName) - Position)
- La longueur de
LENGTH(FullName)est de 12 (l'espace compte comme un caractère). - La boucle vérifie un caractère à la fois ; l'espace est à la position 4, donc
Positionest 4. - Le nom de famille commence à la position 5 et contient $12 - 4 = 8$ caractères :
SUBSTRING(FullName, 5, 8)correspond à"Lovelace".
SUBSTRING : prendre une partie d'une chaîne
Le premier caractère est à la position 1. SUBSTRING(Mot, Début, Longueur) prend Length caractères commençant à Start — faites glisser les deux poignées et lisez l'appel qu'il construit.
| English | Français |
|---|---|
| substring/ˈsʌbstrɪŋ/ | sous-chaîne |
| upper case/ˈʌpə keɪs/ | majuscules |
| lower case/ˈləʊə keɪs/ | minuscules |
8.1
Instructions imbriquées
Une instruction imbriquée est une structure de contrôle placée à l'intérieur d'une autre. Vous pouvez imbriquer des sélections et des itérations.
FOR I ← 1 TO 3
IF MOD(I, 2) = 0
THEN
OUTPUT I, " is even"
ELSE
OUTPUT I, " is odd"
ENDIF
NEXT I
Vous n'aurez pas à écrire plus de trois niveaux d'imbriquation.
8.1
Procédures et fonctions
Pour éviter de répéter du code, vous pouvez diviser un programme en blocs nommés.
- Une procédure est un bloc de code nommé qui effectue une tâche. Vous l'appellez avec
CALL. - Une fonction est semblable à une procédure, mais elle retourne une valeur vers l'endroit où elle a été appelée.
Un paramètre est une entrée nommée dans une procédure ou une fonction ; un appel fournit sa valeur. Les questions d'examen utilisent jusqu'à trois paramètres.
PROCEDURE Greet(PersonName : STRING)
OUTPUT "Hello ", PersonName
ENDPROCEDURE
CALL Greet("Sam")
FUNCTION Square(N : INTEGER) RETURNS INTEGER
RETURN N * N
ENDFUNCTION
Answer ← Square(5) // answer is 25
Exemple résolu. Écrire une fonction qui retourne le plus grand de deux nombres, et l'utiliser.
FUNCTION Larger(A : INTEGER, B : INTEGER) RETURNS INTEGER
DECLARE Result : INTEGER
IF A > B
THEN
Result ← A
ELSE
Result ← B
ENDIF
RETURN Result
ENDFUNCTION
Biggest ← Larger(12, 30)
OUTPUT Larger(Biggest, 25)
Larger(12, 30) retourne 30, qui est stocké dans Biggest ; Larger(30, 25) retourne 30, qui est affiché. A, B et Result sont locaux : ils n'existent que pendant l'exécution de la fonction. Le résultat d'une fonction doit être utilisé, par exemple dans une affectation ou une sortie ; une procédure s'exécute sur sa propre ligne avec CALL et ne renvoie rien.

Variables locales et globales
- Une variable locale est déclarée à l'intérieur d'une procédure ou d'une fonction. Elle ne peut y être utilisée.
- Une variable globale est déclarée dans le programme principal. Elle peut être utilisée partout.
Les variables locales sont plus sûres, car elles ne peuvent pas être modifiées par erreur depuis une autre partie du programme.
| English | Français |
|---|---|
| procedure/prəˈsiːdʒə/ | procédure |
| function/ˈfʌŋkʃn/ | fonction |
| parameter/pəˈræmɪtə/ | paramètre |
| local variable/ˈləʊkl ˈveərɪəbl/ | variable locale |
| global variable/ˈɡləʊbl ˈveərɪəbl/ | variable globale |
| library routine/ˈlaɪbrəri ruːˈtiːn/ | routine de bibliothèque |
| maintainable/meɪnˈteɪnəbl/ | maintenable |
| meaningful identifiers/ˈmiːnɪŋfl aɪˈdentɪfaɪəz/ | identificateurs significatifs |
| comments/ˈkɒments/ | commentaire |
8.1
Fonctions de bibliothèque
Une routine de bibliothèque est un bloc de code prêt à l'emploi que vous pouvez utiliser. Vous devez connaître celles-ci :
| Routine | Ce qu'elle fait |
|---|---|
MOD |
donne le reste d'une division |
DIV |
donne la partie entière d'une division |
ROUND |
arrondit un nombre réel au nombre de décimales spécifié |
RANDOM |
donne un nombre aléatoire |
| Appel | Résultat |
|---|---|
MOD(17, 5) |
2 |
DIV(17, 5) |
3 |
ROUND(3.14159, 2) |
3.14 |
ROUND(7.46, 1) |
7.5 |
RANDOM() |
un nombre réel aléatoire compris entre 0 et 1 |
MOD(Number, 2) = 0 teste si un nombre est pair ; DIV(Seconds, 60) et MOD(Seconds, 60) convertissent 135 secondes en 2 minutes et 15 secondes.
8.1
Écrire un programme maintenable
Un programme maintenable est facile à lire et à modifier pour les autres plus tard. Pour en créer un :
- utiliser des identifiants significatifs — noms clairs pour les variables, constantes, tableaux, procédures et fonctions (
totalScore, pasx); - ajoutez des commentaires pour expliquer ce que font les parties du code ;
- utilisez des procédures et des fonctions pour diviser le travail en petits blocs.
8.2
Tableaux
Programme
| Les candidats doivent être capables de : | Notes et orientations |
|---|---|
| 1 Déclarer et utiliser des tableaux à une dimension (1D) et à deux dimensions (2D) | |
| 2 Comprendre l'utilisation des tableaux | • Y compris l'utilisation de variables comme indices dans les tableaux |
| 3 Écrire des valeurs dans un tableau et lire des valeurs à partir d'un tableau en utilisant l'itération | • Le premier indice peut être zéro ou un • Y compris l'itération imbriquée |
Source : Programme Cambridge International
Un tableau est une seule variable qui contient plusieurs valeurs du même type, identifiées par un index (un numéro de position).
Tableaux à une dimension
Un tableau à une dimension (1D) est comme une liste unique.
DECLARE Scores : ARRAY[1:5] OF INTEGER
Scores[1] ← 90
Scores[2] ← 75
OUTPUT Scores[1]

Vous pouvez utiliser une boucle pour remplir ou lire un tableau :
FOR I ← 1 TO 5
INPUT Scores[I]
NEXT I
Exemple résolu. Trouvez la note la plus élevée dans Scores et sa position. Scores contient 90, 75, 98, 61, 98.
DECLARE Scores : ARRAY[1:5] OF INTEGER
Scores[1] ← 90
Scores[2] ← 75
Scores[3] ← 98
Scores[4] ← 61
Scores[5] ← 98
Highest ← Scores[1]
Place ← 1
FOR I ← 2 TO 5
IF Scores[I] > Highest
THEN
Highest ← Scores[I]
Place ← I
ENDIF
NEXT I
OUTPUT "Highest ", Highest, " at position ", Place
I |
Scores[I] |
> Highest? |
Highest |
Place |
|---|---|---|---|---|
| début | 90 | 1 | ||
| 2 | 75 | non | 90 | 1 |
| 3 | 98 | oui | 98 | 3 |
| 4 | 61 | non | 98 | 3 |
| 5 | 98 | non | 98 | 3 |
La sortie est Highest 98 at position 3. Commencer Highest au premier élément, et non à 0, permet également de gérer les valeurs négatives ; avec >= au lieu de >, le dernier 98 serait trouvé (position 5).
Tableaux à deux dimensions
Un tableau à deux dimensions (2D) est comme un tableau avec des lignes et des colonnes. Il utilise deux indices.
DECLARE Grid : ARRAY[1:3, 1:3] OF INTEGER
Grid[1, 1] ← 5
Grid[2, 3] ← 8

Vous lisez un tableau 2D avec une boucle à l'intérieur d'une boucle (itération imbriquée).
Exemple résolu. Marks[1:3, 1:2] contient deux notes de test pour chacun des trois élèves (lignes). Affichez le total de chaque élève.
| Colonne 1 | Colonne 2 | |
|---|---|---|
| Ligne 1 | 12 | 15 |
| Ligne 2 | 9 | 11 |
| Ligne 3 | 14 | 18 |
DECLARE Marks : ARRAY[1:3, 1:2] OF INTEGER
Marks[1, 1] ← 12
Marks[1, 2] ← 15
Marks[2, 1] ← 9
Marks[2, 2] ← 11
Marks[3, 1] ← 14
Marks[3, 2] ← 18
FOR Row ← 1 TO 3
Total ← 0
FOR Col ← 1 TO 2
Total ← Total + Marks[Row, Col]
NEXT Col
OUTPUT "Student ", Row, ": ", Total
NEXT Row
La boucle externe sélectionne un élève ; la boucle interne ajoute ses deux notes. La sortie est 27, 20 et 32. Total ← 0 doit être placé à l'intérieur de la boucle externe : s'il était placé avant, les totaux continueraient à 27, 47 et 79.
Un programme complet pour un scénario
La dernière question de l’épreuve 2 vous demande d’écrire un programme complet pour un scénario, en utilisant des tableaux. Des points sont attribués pour chaque partie demandée : planifiez donc les parties avant d’écrire.
Exemple corrigé. Une station météorologique enregistre la température à midi pour chacun des 7 jours d’une semaine. Écrivez un programme qui :
- saisit les 7 températures dans un tableau, en acceptant uniquement les valeurs de −20 à 50 ;
- affiche la température moyenne de la semaine ;
- affiche le nombre de jours au-dessus de cette moyenne et le jour le plus chaud.
Plan. (1) déclarer le tableau et les variables ; (2) une boucle de 7 saisies, chacune avec une boucle de validation ; (3) un total cumulé, puis la moyenne ; (4) une deuxième boucle pour compter les jours au-dessus de la moyenne et trouver la température la plus élevée ; (5) des sorties accompagnées de messages.
DECLARE Temps : ARRAY[1:7] OF REAL
DECLARE Day, AboveCount, HotDay : INTEGER
DECLARE Total, Average : REAL
Total ← 0
FOR Day ← 1 TO 7
OUTPUT "Enter the temperature for day ", Day
INPUT Temps[Day]
WHILE Temps[Day] < -20 OR Temps[Day] > 50 DO
OUTPUT "Invalid: enter a value from -20 to 50"
INPUT Temps[Day]
ENDWHILE
Total ← Total + Temps[Day]
NEXT Day
Average ← Total / 7
OUTPUT "Average temperature: ", ROUND(Average, 1)
AboveCount ← 0
HotDay ← 1
FOR Day ← 1 TO 7
IF Temps[Day] > Average
THEN
AboveCount ← AboveCount + 1
ENDIF
IF Temps[Day] > Temps[HotDay]
THEN
HotDay ← Day
ENDIF
NEXT Day
OUTPUT "Days above average: ", AboveCount
OUTPUT "Hottest day: ", HotDay, " at ", Temps[HotDay]
Pourquoi cette réponse rapporte des points. Chaque partie demandée est présente et facile à trouver : la boucle de validation redemande la saisie jusqu’à ce que la valeur soit dans la plage autorisée (un IF ne vérifierait qu’une seule fois) ; la valeur est ajoutée au total après sa validation ; la moyenne est calculée après la boucle, et non à l’intérieur ; le compteur commence à 0 et le jour le plus chaud est initialisé au jour 1, ce qui garantit qu’il correspond toujours à une mesure réelle. Les jours au-dessus de la moyenne nécessitent une deuxième boucle, car la moyenne n’est connue qu’après la saisie de toutes les valeurs.
Erreurs fréquentes. Diviser par 7 à l’intérieur de la première boucle ; comparer avec la moyenne avant qu’elle soit calculée ; initialiser la valeur maximale à 0 (ce qui est incorrect si toutes les températures sont négatives) ; et afficher des nombres sans message indiquant leur signification.
Tableaux
Choisissez une ligne et une colonne pour lire une cellule. Les tableaux de Cambridge comptent à partir de 1, et un élément en 2D s'écrit avec UNE paire de crochets — Grid[2, 3].
| English | Français |
|---|---|
| array/əˈreɪ/ | tableau |
| index/ˈɪndeks/ | indice |
| one-dimensional (1D) array/wʌn daɪˈmenʃənl əˈreɪ/ | tableau unidimensionnel (1D) |
| two-dimensional (2D) array/tuː daɪˈmenʃənl əˈreɪ/ | tableau bidimensionnel (2D) |
8.3
Gestion des fichiers
Programme
| Les candidats doivent être capables de : | Notes et orientations |
|---|---|
| 1 Comprendre l'objectif du stockage des données dans un fichier utilisé par un programme | |
| 2 Ouvrir, fermer et utiliser un fichier pour la lecture et l'écriture | • Y compris : – lire et écrire des éléments de données individuels – lire et écrire une ligne de texte |
Source : Programme Cambridge International
Un programme peut stocker des données dans un fichier afin qu'elles soient conservées après l'arrêt du programme. Vous devez ouvrir le fichier, l'utiliser, puis le fermer.
OPENFILE "data.txt" FOR WRITE
WRITEFILE "data.txt", "Hello"
CLOSEFILE "data.txt"
OPENFILE "data.txt" FOR READ
READFILE "data.txt", Line
CLOSEFILE "data.txt"
Vous pouvez lire et écrire des éléments de données individuels ou une ligne entière de texte. Fermez toujours un fichier lorsque vous avez terminé avec lui.
Exemple résolu. Enregistrez les cinq valeurs de Scores dans un fichier, une par ligne, puis lisez la première à nouveau.
DECLARE Scores : ARRAY[1:5] OF INTEGER
Scores[1] ← 90
Scores[2] ← 75
Scores[3] ← 98
Scores[4] ← 61
Scores[5] ← 98
OPENFILE "scores.txt" FOR WRITE
FOR I ← 1 TO 5
WRITEFILE "scores.txt", Scores[I]
NEXT I
CLOSEFILE "scores.txt"
OPENFILE "scores.txt" FOR READ
READFILE "scores.txt", FirstScore
CLOSEFILE "scores.txt"
OUTPUT FirstScore
Chaque WRITEFILE ajoute une ligne, donc le fichier contient cinq lignes ; la lecture commence en haut, donc FirstScore est la première note. Ouvrir un fichier FOR WRITE le vide : tout contenu existant est perdu.
| English | Français |
|---|---|
| file/faɪl/ | fichier |
8.3
Conseils d'examen
- Pour la longue question fondée sur un scénario, listez d’abord les parties demandées, puis assurez-vous que chacune figure dans votre code, avec des commentaires ou des messages qui indiquent où elles se trouvent.
- Une variable peut changer pendant l'exécution du programme ; une constante est fixe. Apprenez les cinq types de données : entier, réel, caractère, chaîne, booléen.
- Tout programme est construit à partir de trois structures : séquence, sélection (IF / CASE), et itération (boucles).
- Une boucle WHILE teste avant le corps, donc elle peut s'exécuter zéro fois ; une boucle REPEAT … UNTIL teste après, donc elle s'exécute toujours au moins une fois.
MODdonne le reste etDIVla partie entière d'une division :17 MOD 5est 2,17 DIV 5est 3.- Une fonction retourne une valeur ; une procédure ne le fait pas. Une variable locale fonctionne uniquement à l'intérieur de son bloc ; une globale fonctionne partout.
Leçons interactives sur ce sujet
Traversez-le étape par étape, avec des exercices à vérification instantanée.