DOCUMENTATION & SYNTAXE

Guide & Référence du langage algorithmique

Toutes les constructions, tables de déclaration, fonctions prédéfinies et opérations sur les fichiers prises en charge par le moteur AlgoTN.

STRUCTURE

Structure générale & Routines

Organisation d’un programme, procédures et fonctions avec paramètres par valeur ou par adresse (@).

algorithme nom
debut
    ...
fin

Le bloc principal commence juste après l’en-tête et se termine par FIN. Il peut appeler des routines déclarées séparément après ce FIN. Les tables TDNT et TDOG s’assemblent automatiquement dans l’en-tête.

procedure permuter(@a : entier, @b : entier)
debut
    ...
fin

Une procédure peut être appelée depuis le bloc principal, une autre procédure ou une fonction. Le préfixe @ passe une variable par adresse : sa modification est visible chez l’appelant.

fonction somme(a : entier, b : entier) : entier
debut
    retourner a + b
fin

Une fonction renvoie une valeur avec RETOURNER et peut être appelée dans une procédure.

TDNT · TDOG · TDOL

Tables de déclaration des types et objets

Comment déclarer vos tableaux, matrices, enregistrements et variables dans les tables flottantes.

tab = tableau de 20 entier
mat = tableau de 4 lignes * 4 colonnes reel

Dans TDNT : définit un tableau ou une matrice, avec des indices à partir de 0. La forme courte « Tableau de 4 * 4 Reel » fonctionne aussi. Dans TDOG ou TDOL, choisissez « Tableau / Matrice… » pour saisir directement le type.

eleve = enregistrement
    nom : chaine
    moy : reel
fin

Dans la table TDNT : définit une structure à plusieurs champs, accessibles avec la notation pointée (ex: E.nom ← "Sami").

tdog (globaux) & tdol (locaux)

Faites un clic droit dans le code (ou cliquez sur + Table) pour ajouter TDNT, TDOG ou TDOL. Cliquez sur l’icône de lien d’une table TDOL puis sur une routine pour les relier.

CONTRÔLE

Structures conditionnelles et itératives

Conditions SI / SELON et boucles POUR, TANT_QUE et REPETER.

si condition alors
    ...
sinon
    ...
fin si

Exécution conditionnelle. Supporte les opérateurs =, ≠ (ou <>), <, ≤ (ou <=), >, ≥ (ou >=), ET, OU, NON.

selon choix
    1, 2 : ecrire_nl("début")
    3..5 : ecrire_nl("milieu")
    autres : ecrire_nl("autre")
fin_selon

Sélection multiple avec valeurs séparées par des virgules, intervalles (a..b) et branche AUTRES.

pour i de 0 a 6 pas = 2 faire
    ecrire_nl(i)
fin pour

Affiche 0, 2, 4, 6. Le pas vaut 1 par défaut ; PAS = -2 permet de compter à rebours. PAS 2 fonctionne aussi. Le pas ne peut pas être nul.

si x ∈ [1..5] alors
    ecrire_nl("entre 1 et 5")
fin si
si majus(ch[i]) ∈ ["a", "e", "i", "o", "u", "y"] alors
    nombre ← nombre + 1
fin si

Appartenance à un intervalle inclusif ou à une liste de valeurs. ch[0] est le premier caractère, ch[i] celui d’indice i. Sur téléphone ou PC, tapez « dans » à la place de ∈.

tant_que condition faire ... fin_tant_que
repeter ... jusqu'a condition

Boucles conditionnelles testées à l’entrée (TANT_QUE) ou à la sortie (REPETER ... JUSQU’À).

FONCTIONS

Fonctions prédéfinies (Chaînes, Maths, Conversions)

Fonctions standards du programme officiel directement utilisables dans vos expressions.

long(ch) · sous_chaine(ch, d, f) · pos(sous, ch) · effacer(ch, d, f) · majus(ch)

Traitement des chaînes de caractères : longueur, extraction de d (inclus) à f (exclus), position d’une sous-chaîne (-1 si absente), suppression et mise en majuscules.

convch(n) · valeur(ch) · estnum(ch) · ord(c) · chr(code)

Conversions entre nombres et chaînes, test de validité numérique et code ASCII (0..127).

abs(x) · arrondi(x) · ent(x) · racine_carree(x) · alea(min, max) · a div b · a mod b

Opérations arithmétiques, partie entière, racine carrée et tirage aléatoire entier entre min et max inclus.

FICHIERS

Entrées / Sorties & Fichiers Virtuels

Lecture au clavier, affichage console et manipulation de fichiers texte (.txt) ou typés (.dat).

lire(x) · ecrire(a, b) · ecrire_nl(a, b)

LIRE met le programme en pause et ouvre une invite interactive dans la console. ECRIRE_NL ajoute un retour à la ligne.

ouvrir("notes.txt", f, "r" | "w" | "a")
lire_ligne(f, ch) · ecrire_nl(f, ch) · fin_fichier(f) · fermer(f)

Manipulation de fichiers texte déclarés avec le type Fichier Texte. Les modes rb, wb, ab permettent de manipuler des fichiers typés (.dat).

PRODUCTIVITÉ

Raccourcis clavier & Astuces de l’éditeur

Ctrl + SEnregistrer immédiatement et lancer la synchronisation cloud
Ctrl + EntréeExécuter le fichier .algo ou .py actif dans la console
< puis -Transforme automatiquement <- en flèche d’affectation ←
TabCompléter un mot-clé, un bloc (SI, POUR…) ou un modèle TDNT
Clic droitOuvrir le menu d’ajout rapide de table (TDNT, TDOG, TDOL)
Ctrl + Z / YAnnuler ou rétablir les modifications dans le code ou les tables

Prêt à tester une structure dans l’éditeur ?

Ouvrez votre espace de travail ou chargez directement l’exemple de recherche dichotomique.