Vous êtes sur la page 1sur 11

Manuel de l'utilisateur

Sommaire
1. Fonctionnement gnral
2. Premire prise en main d'AlgoBox avec un exemple trs simple
3. Autres rgles d'utilisation d'AlgoBox
o 3.1 Les types de variables
o 3.2 Les expressions conditionnelles
o 3.3 Les boucles
o 3.4 Lecture et affichage des variables
o 3.5 Affichage d'une variable ou d'un message
o 3.6 Utilisation d'une fonction numrique
o 3.7 Tracer des points et des segments dans un repre
o 3.8 Utiliser des fonctions locales
o 3.9 Copier, coller et couper une ligne ou bloc de l'algorithme
o 3.10 Ajout de commentaires
o 3.11 Provoquer un arrt temporaire de l'excution d'un algorithme avec l'instruction PAUSE
o 3.12 Excution d'un algorithme en mode "pas pas"
o 3.13 Calculs numriques et arrondis
o 3.14 Export des rsultats d'un algorithme en pdf
4. Raccourcis clavier
5. Tutoriel d'initiation l'algorithmique avec AlgoBox
6. Dboguer un algorithme
7. Scurits lors de l'excution d'un algorithme
8. Augmenter l'espace disponible pour la conception d'un algorithme
9. Simulation de tableaux deux dimensions
10. Edition du code en mode "diteur de texte"
11. Le menu "Extension"

1. Fonctionnement gnral
Deux modes sont disponibles pour diter des algorithmes avec AlgoBox (voir boutons en haut
droite de la barre d'outil):

Le mode "normal" (recommand aux dbutants) o l'on construit l'algorithme par blocs logiques
dans un arbre;
Le mode "diteur de texte" o l'on tape directement les commandes dans un diteur classique
(voir ici pour plus de dtails).
Le fonctionnement d'AlgoBox dans le mode "normal" est bas sur les deux principes suivants :
1. Pour pouvoir utiliser une variable dans son algorithme, il faut d'abord la dclarer en utilisant le
bouton Dclarer nouvelle variable qui est activable tout moment.
2. Pour ajouter un nouvel lment l'algorithme (autre que la dclaration d'une variable), il faut
d'abord insrer une nouvelle ligne en utilisant le bouton Nouvelle ligne (raccourci-clavier :
Ctrl+Return). Ce bouton n'est activable que s'il est possible d'ajouter une nouvelle ligne aprs la
position actuelle dans le code. Par exemple, l'ajout d'une nouvelle ligne aprs "Fin_Algorithme"
n'est pas autoris.
Avant d'insrer une nouvelle ligne, il peut donc tre ncessaire de se positionner l'endroit
voulu dans la code l'aide de la souris ou des touches "flches" du clavier.
Une fois que l'on est positionn sur une nouvelle ligne, il suffit de cliquer sur l'un des boutons
disponibles dans le panneau infrieur pour insrer l'instruction (ou le bloc d'instructions) dsir.
Autres caractristiques du logiciel :
Aprs avoir entr certaines instructions, il est possible d'en modifier les paramtres en cliquant
sur le bouton Modifier Ligne (le bouton n'est activable que lorsque les changements sont
possibles).
Pour les autres instructions, notamment pour la dclaration de variables, la seule possibilit est
de supprimer la ligne qui ne correspond plus au code dsir.
Il est possible tout moment d'effacer une instruction avec le bouton Supprimer Ligne/Bloc
Attention : la suppression d'une ligne "SI ALORS", "POUR...DE...A" et "TANT QUE"
entrane la suppression de tout le bloc d'instructions qui en dpend (tout ce qui est contenu
entre "DEBUT..." et "FIN...")
Pour tester le fonctionnement de l'algorithme, il suffit de cliquer sur le bouton Tester (dans la
barre d'outils ou dans le panneau de droite). Une fentre apparat alors dans laquelle il suffit de
cliquer sur le bouton Lancer l'algorithme pour prcder l'excution de l'algorithme. S'il n'y a
pas d'erreurs de syntaxe dtecte d'entre dans le code de l'algorithme, les rsultats apparaissent
entre les messages "***Algorithme lanc***" et "***Algorithme termin***".
L'excution d'un algorithme peut-tre stopp tout moment en cliquant sur le
bouton Arrter.
La dtection d'une erreur de calcul (division par zro, par exemple) entraine l'arrt immdiat de
l'excution d'un algorithme.
Il est aussi possible d'imprimer la partie suprieure de la fentre de test contenant le code et
l'ventuel graphique l'aide d'un clic-droit sur cette zone.
Les oprations standards d'ouverture et d'enregistrement sont disponibles via la barre d'outils et
le menu "Fichier". Il est conseill avant de sauvegarder son travail de remplir le champ
"Prsentation de l'algorithme" dans lequel on peut prsenter brivement l'algorithme sur lequel
on travaille.
Il est aussi possible d'imprimer et d'exporter le code de l'algorithme via le menu "Fichier".
L'option "Exporter algorithme complet vers page web" du menu "Fichier" permet d'excuter
un algorithme dj conu partir d'une simple page web que l'on peut aisment alors transfrer
sur un site internet.
Limitations importantes :
o pour les algorithmes utilisant le repre graphique, il faut utiliser un autre navigateur qu'internet
explorer ou rester dans AlgoBox (internet explorer, qui n'inclut pas certaines fonctionnalits, ne
peut en effet pas afficher les graphiques)
o certaines fonctionnalits d'AlgoBox, comme le mode "pas pas", l'affichage progressif des
donnes ou la possibilit d'arrter tout moment l'excution d'un algorithme, ne sont plus
disponibles pour les algorithmes enregistrs sous forme de simple page web.
Une srie d'exemples d'algorithmes est fournie avec le logiciel. On peut y accder l'aide de
l'option "Ouvrir exemples" du menu "Ficher". (les exemples dont le nom commence par "prof"
servent illustrer les capacits d'AlgoBox et ne sont pas destins tre utiliss tels quels en
classe)

2. Premire prise en main d'AlgoBox avec un exemple trs simple


Supposons que l'on veuille calculer l'image de n'importe quel rel x par la fonction f dfinie par
f(x)=3x+4.

1. On dclare d'abord la variable x en cliquant sur Dclarer nouvelle variable. On entre alors x dans
le champ Nom de la variable, on s'assure que le type NOMBRE est bien slectionn et on clique
sur "OK".
2. On effectue la mme opration avec la variable y.
3. On s'assure que la ligne courante dans le code est bien positionne sur
"DEBUT_ALGORITHME" et on clique alors sur Nouvelle Ligne.
4. Pour pouvoir lire la valeur de x, on clique ensuite sur Ajouter LIRE variable et on s'assure que la
variable x est bien slectionne avant de cliquer sur "OK".
5. La ligne courante tant bien "LIRE x", on clique sur le bouton Nouvelle Ligne, puis sur le
bouton AFFECTER valeur variable. On slectionne alors y en face de "La variable" et on
entre 3*x+4 dans le champ aprs "prend la valeur" avant de cliquer sur "OK".
6. Reste afficher la valeur de y. Pour cela on ajoute une nouvelle ligne aprs "y
PREND_LA_VALEUR 3*x+4" (clic sur le bouton Nouvelle Ligne). On clique alors sur le
bouton Ajouter AFFICHER variable et on slectionne y aprs "Afficher la variable" avant de
cliquer sur "OK".
7. Il n'y a plus qu' tester l'algorithme en cliquant sur le bouton Tester. Dans la fentre qui
s'affiche, il suffit alors de cliquer sur le bouton Lancer l'algorithme. On entre alors la valeur de x
: son image par la fonction f apparat alors dans la zone "Rsultat". Pour calculer une autre
image, il suffit de cliquer nouveau sur Lancer algorithme. Pour revenir la fentre principale
d'AlgoBox, cliquez sur le bouton Fermer.

3. Autres rgles d'utilisation d'AlgoBox


1. Les types de variables:
AlgoBox permet l'utilisation de trois types de variables : les nombres (type NOMBRE), les listes de
nombres (type LISTE) et les chanes de caractres (type CHAINE).

Oprations avec les nombres :


En plus des 4 oprations de base (+,-,*,/), les calculs possibles sont (x tant une variable du
type NOMBRE) :
o Racine carre d'une variable x : sqrt(x)
o Mettre une variable x la puissance n : pow(x,n)
o Obtenir un nombre pseudo-alatoire compris en 0 et 1 : random()
o Nombre PI : Math.PI
o Partie entire d'une variable x : floor(x)
o Cosinus d'une variable x (en radians): cos(x)
o Sinus d'une variable x (en radians): sin(x)
o Tangente d'une variable x (en radians): tan(x)
o Exponentielle d'une variable x : exp(x)
o Logarithme nprien d'une variable x : log(x)
o Valeur absolue d'une variable x : abs(x)
o Arrondi d'une variable x l'entier le plus proche : round(x)
o Reste de la division de la variable x par la variable y : x%y
o ArcCosinus d'une variable x : acos(x)
o ArcSinus d'une variable x : asin(x)
o ArcTangente d'une variable x : atan(x)
Il faut utiliser le . comme sparateur dcimal.

Fonctions supplmentaires :
o ALGOBOX_ALEA_ENT(p,n) : renvoie un entier pseudo-alatoire compris entre p et n.
o ALGOBOX_COEFF_BINOMIAL(n,p) (ou ALGOBOX_NB_COMBINAISONS(n,p)) : renvoie le coefficient
binomial "p parmi n".
o ALGOBOX_LOI_BINOMIALE(n,p,k) : renvoie la probabilit d'obtenir k succs en rptant n fois une
exprience alatoire dont la probabilit d'obtenir un succs est p avec le modle de la loi
binomiale.
o ALGOBOX_LOI_NORMALE_CR(x) : renvoie p(X<x) pour la loi normale centre rduite
o ALGOBOX_LOI_NORMALE(esp,ecart,x) : renvoie p(X<x) pour la loi normale d'esprance esp et
d'cart-type ecart.
o ALGOBOX_INVERSE_LOI_NORMALE_CR(p) : opration inverse de ALGOBOX_LOI_NORMALE_CR(x).
o ALGOBOX_INVERSE_LOI_NORMALE(esp,ecart,p) : opration inverse
de ALGOBOX_LOI_NORMALE(esp,ecart,x).
o ALGOBOX_FACTORIELLE(n) : renvoie la factorielle de l'entier n (pour n<70)
Oprations avec les listes :
o Les listes AlgoBox sont des listes numrotes de nombres.
o Si vous slectionnez pour la variable une variable du type LISTE, vous devez indiquer dans le
champ rang du terme de la liste le numro du terme de la liste auquel vous voulez affecter une
valeur.
o Pour remplir directement une liste, il faut indiquer dans le champ rang du terme de la liste le
rang du premier terme de la liste et sparer ensuite les valeurs par le caractre : dans le
champ prend la valeur. (on obtient alors une instruction du style maliste[1] prend la
valeur 1:2:3:4 )
o Pour utiliser un terme d'une liste dans un calcul, il faut utiliser la syntaxe suivante
: nomliste[rang]
Exemple : moy prend la valeur (maliste[1]+maliste[2]+maliste[3])/3 (la variable du
type NOMBRE moy contiendra la moyenne des trois premiers termes de la liste maliste)
o Les calculs possibles avec une liste sont (tous les rsultats sont du type NOMBRE):
Somme : ALGOBOX_SOMME(nom_de_la_liste,rang_premier_terme,rang_dernier_terme)
Moyenne : ALGOBOX_MOYENNE(nom_de_la_liste,rang_premier_terme,rang_dernier_terme)
Variance : ALGOBOX_VARIANCE(nom_de_la_liste,rang_premier_terme,rang_dernier_terme)
Ecart-type : ALGOBOX_ECART_TYPE(nom_de_la_liste,rang_premier_terme,rang_dernier_terme)
Mdiane : ALGOBOX_MEDIANE(nom_de_la_liste,rang_premier_terme,rang_dernier_terme)
Premier quartile
: ALGOBOX_QUARTILE1((nom_de_la_liste,rang_premier_terme,rang_dernier_terme)
(dfinition calculatrice : mdiane de la sous-srie infrieure - la srie doit comporter au moins 4
valeurs, sinon une erreur est dclare)
Troisime quartile
: ALGOBOX_QUARTILE3((nom_de_la_liste,rang_premier_terme,rang_dernier_terme)
(dfinition calculatrice : mdiane de la sous-srie suprieure - la srie doit comporter au moins 4
valeurs, sinon une erreur est dclare)
Premier quartile Bis
: ALGOBOX_QUARTILE1_BIS((nom_de_la_liste,rang_premier_terme,rang_dernier_terme)
(autre dfinition : plus petite valeur telle qu'au moins 25% des donnes lui soient infrieures - la
srie doit comporter au moins 4 valeurs, sinon une erreur est dclare)
Troisime quartile Bis
: ALGOBOX_QUARTILE3_BIS((nom_de_la_liste,rang_premier_terme,rang_dernier_terme)
(autre dfinition : plus petite valeur telle qu'au moins 75% des donnes lui soient infrieures - la
srie doit comporter au moins 4 valeurs, sinon une erreur est dclare)
Minimum : ALGOBOX_MINIMUM(nom_de_la_liste,rang_premier_terme,rang_dernier_terme)
Maximum : ALGOBOX_MAXIMUM(nom_de_la_liste,rang_premier_terme,rang_dernier_terme)
Rang du minimum
: ALGOBOX_POS_MINIMUM(nom_de_la_liste,rang_premier_terme,rang_dernier_terme)
Rang du maximum
: ALGOBOX_POS_MAXIMUM(nom_de_la_liste,rang_premier_terme,rang_dernier_terme)
Oprations avec les chanes :
o Le contenu d'une chane doit tre encadr par des guillemets :
Exemple : a prend la valeur "bonjour" (a tant une variable du type chaine)
o Il est possible d'ajouter (concatner) des chanes :
Exemple : b prend la valeur a+"bonjour" (a et b tant des variables du type CHAINE)
o Il est possible d'extraire le contenu d'une chane avec
l'instruction chane.substr(position_premier_caractre__extraire,nombre_de_caractres__
extraire).
Attention : la premier caractre a pour position 0 (et pas 1)
Exemple : b prend la valeur a.substr(4,2) (b sera alors form des 5me et 6me caractres
de a ; a et b tant des variables du type CHAINE)
o Un nombre peut-tre transform en chane avec l'instruction nombre.toString()
Exemple : machaine prend la valeur nb.toString() (nb tant une variable du
type NOMBRE et machaine tant une variable du type CHAINE)
o La longueur d'une chaine peut-tre obtenue avec l'instruction chaine.length
Exemple : longueur prend la valeur machaine.length (longueur tant une variable du
type NOMBRE et machaine tant une variable du type CHAINE)
o L'instruction machaine.charCodeAt(pos) permet d'obtenir le nombre gal au code ascii de la
lettre figurant la position pos dans la chaine machaine (Attention : le premier caractre a pour
position 0).
o Inversement, l'instruction String.fromCharCode(nombre) renvoie une chaine contenant le
caractre dont le code ascii est gal nombre.
2. Les expressions conditionnelles (structures SI ALORS et TANT QUE) :
Exemples de syntaxe pour la condition :
o Pour vrifier si x est gal 2, la condition crire est : x==2
o Pour vrifier si x est diffrent de 2, la condition crire est : x!=2
o Pour vrifier si x est strictement infrieur 2, la condition crire est : x<2
o Pour vrifier si x est infrieur ou gal 2, la condition crire est : x<=2
o Pour vrifier si x est strictement suprieur 2, la condition crire est : x>2
o Pour vrifier si x est suprieur ou gal 2, la condition crire est : x>=2
Il est possible de combiner plusieurs conditions avec ET et OU :
o La condition crire pour vrifier que x est strictement compris entre 1 et 5 est : x>1 ET x<5
o La condition crire pour vrifier que x est gal 3 OU 5 est : x==3 OU x==5
Il est aussi possible d'utiliser des calculs dans les expressions conditionnelles. Exemple de
condition : x<sqrt(n)
Avertissement : le nombre d'itrations pour les boucles TANT QUE est limit 500000 pour des
raisons de scurit.
3. Les boucles (structure POUR ALLANT DE A)

o La variable utilise pour la boucle (champ POUR la variable) ne peut-tre que du type NOMBRE et
la valeur de cette variable est automatiquement augmente de 1 chaque boucle.
o Les champs ALLANT DE et A peuvent contenir des nombres ou des variables du type NOMBRE.
C'est l'utilisateur de vrifier que la valeur du champ ALLANT DE est bien infrieure celle du
champ A.
o Avertissement : le nombre d'itrations des boucles est limit 500000 pour des raisons de
scurit.
4. Lecture et affichage des variables (commandes LIRE variable et AFFICHER variable)
Si on veut lire ou afficher le terme d'une liste, il faut slectionner le nom de la liste et
obligatoirement renseigner le champ Rang du terme de la liste qui peut contenir un nombre ou le
nom d'une variable du type NOMBRE.
5. Affichage d'une variable ou d'un message (commandes AFFICHER variable et AFFICHER
message)
Si la case Ajouter un retour la ligne est coche, le prochain affichage d'une variable ou d'un
message se fera sur une nouvelle ligne. Dans le cas contraire, le prochain affichage se fera
directement la suite du prcdent.
6. Utilisation d'une fonction numrique
En activant l'option Utiliser une fonction dans l'onglet "Utiliser une fonction numrique", on
peut utiliser l'image de n'importe quel nombre (ou variable de type nombre) par la fonction
note F1 dans le code de l'algorithme. Il suffit pour cela d'entrer l'expression de F1(x) en
fonction de x dans le champ prvu pour cela.
Pour utiliser l'image d'un nombre nb par la fonction F1 dans l'algorithme, il suffit d'utiliser le
code : F1(nb) (cela peut se faire dans une affectation ou dans une expression conditionnelle).
7. Tracer des points et des segments dans un repre
En activant l'option Utiliser un repre dans l'onglet "Dessiner dans un repre", un repre
graphique est automatiquement ajout dans la fentre de test de l'algorithme. Il est alors possible
d'inclure dans le code de l'algorithme des instructions pour tracer des points et des segments
dans ce repre en utilisant les boutons Ajouter TRACER POINT et Ajouter TRACER
SEGMENT .
8. Utiliser des fonctions locales
Il est possible avec AlgoBox de dfinir et utiliser des fonctions locales que l'on peut appeler
dans l'algorithme ensuite. Pour crer une nouvelle fonction locale, il suffit de se placer sur
FONCTIONS_UTILISEES, de cliquer sur "Nouvelle ligne" puis sur "Dclarer nouvelle
fonction" dans l'onglet "Fonctions locales". Pour dclarer une ventuelle variable locale
ncessaire une fonction, il faut se placer sur la ligne "VARIABLES_FONCTION"
correspondant la fonction et cliquer sur "Dclarer variable locale". Le bouton "Ajouter
RENVOYER valeur" permet lui de dfinir ce que renverra la fonction. Quand au bouton
\"Appeler Fonction\", il sert appeler une fonction qui ne renvoie pas de valeur.
9. Copier, coller et couper une ligne ou un bloc de l'algorithme
Via le menu Edition, il est possible de copier/coller/couper :
o une ligne de code du type ...PREND_LA_VALEUR..., AFFICHER.... et TRACER....
o un bloc du type POUR ALLANT DE A, SI ALORS et TANT QUE. Pour copier et couper tout
le contenu de ce type de bloc, il faut se placer sur la premire ligne du bloc en question.
Remarque : pour coller une ligne ou un bloc de code, il faut d'abord crer une nouvelle
ligne conformment aux rgles d'dition en vigueur sur AlgoBox.
10. Ajout de commentaires
L'ajout d'un commentaire dans le code de l'algorithme se fait une ligne vierge grce au
bouton Commentaire. Tout commentaire apparat en italique et est prcd des caractres //.
11. Provoquer un arrt temporaire de l'excution d'un algorithme avec l'instruction PAUSE
L'instruction PAUSE arrte l'excution de l'algorithme. L'utilisateur peut alors en cliquant sur
les boutons Continuer et Arrter dcider de poursuivre ou de mettre dfinitivement fin
l'excution de l'algorithme.
12. Excution d'un algorithme en mode "pas pas"
o Pour lancer le mode "pas pas", il suffit de cocher la case correspondante avant de cliquer sur le
bouton Lancer Algorithme.
o La ligne de l'algorithme correspondante chaque arrt est signale en rouge.
o L'entre et la sortie de chaque bloc SI, SINON, TANT QUE et POUR est systmatiquement
signale.
o Aprs chaque instruction pouvant modifier la valeur d'une variable (LIRE, AFFECTER,
DEBUT_POUR), l'tat de l'ensemble de toutes les variables est affiche (les listes sont affiches
sur une ligne spare).
o Lors de chaque arrt, l'utilisateur peut en cliquant sur les boutons Continuer et Arrter dcider
de poursuivre ou de mettre dfinitivement fin l'excution de l'algorithme. Pour poursuivre
l'excution en mode "pas pas" on peut aussi utiliser la touche "flche bas" du clavier.
13. Calculs numriques et arrondis
Dans AlgoBox, comme avec tous les langages de programmation, la reprsentation interne des
nombres qui ne sont ni des entiers, ni des dcimaux simples (du style 0.05) peut engendrer des
problmes de prcision et d'arrondis. Une galit mathmatique peut donc se retrouver non
vrifie lors de l'excution relle d'un algorithme.
L'utilisateur doit tre conscient de ces problmes de prcision ds qu'il manipule des
nombres non entiers. La prudence est notamment de mise lors de l'utilisation d'un
bloc TANT_QUE : une condition ne prenant pas en compte les problmes de prcision en
informatique peut engendrer une boucle infinie (qui sera stoppe par le mcanisme de scurit
interne d'AlgoBox). Il convient donc de tenir compte de ces limites de prcision lors de la
conception de certains algorithmes.
14. Export des rsultats d'un algorithme en pdf
Lors de l'excution d'un algorithme, il est possible d'exporter en pdf l'ensemble des rsultats d'un
algorithme (sorties, graphique, code de l'algorithme) via le menu contextuel qui s'affiche en
effectuant un clic-droit sur la partie suprieure de la fentre de test.

4. Raccourcis clavier
Menu "Fichier" :
o Nouveau : Ctrl+N
o Ouvrir : Ctrl+O
o Sauver : Ctrl+S
o Quitter : Ctrl+Q
Menu "Edition" :
o Copier ligne : Ctrl+C
o Coller ligne : Ctrl+V
o Couper ligne : Ctrl+X
Mise au point de l'algorithme :
o Nouvelle ligne : Ctrl+Entre
o Dclarer nouvelle variable : Ctrl+D
o Tester algorithme : Ctrl+T
o Lire variable : Ctrl+L
o Affecter valeur variable : Ctrl+F
o Afficher variable : Ctrl+R
o Afficher message : Ctrl+M
o Si...Alors : Ctrl+I
o Pour...De...A : Ctrl+P
o Tant...Que : Ctrl+U
Excution de l'algorithme :
o Lancer Algorithme : Entre
o Continuer : Flche Bas
o Arrter : Echap
o Lire variable : Ctrl+Q

5. Tutoriel d'initiation l'algorithmique avec AlgoBox


Un module en ligne d'initiation aux principes de base de l'algorithmique avec AlgoBox peut-tre
lanc via l'option Initiation en ligne l'algorithmique du menu Tutoriel.

6. Dboguer un algorithme
AlgoBox n'inclut pas de dbogueur complet intgr et infaillible. Toutefois,
lors de l'arrt de l'excution d'un algorithme suite une erreur, la dernire ligne excute est
signale automatiquement;
une erreur de calcul entrane automatiquement l'arrt de l'excution : la ligne o figure la calcul
est signale;
pour aider dboguer un algorithme qui ne donne pas les rsultats attendus :
o il est possible d'afficher tout moment l'tat d'une variable (instruction AFFICHER Variable) et
d'inclure une instruction PAUSE;
o l'excution de l'algorithme en mode "pas pas" permet d'afficher tape pas tape la valeur de
toutes les variables.
Remarque : si l'algorithme ne se lance pas, c'est que le code contient une grave erreur de syntaxe
empchant son dmarrage. L'utilisateur est alors invit vrifier notamment la syntaxe des
affectations et des conditions (ainsi que les ventuels tracs graphiques et la dfinition de la
fonction F1)

7. Scurits lors de l'excution d'un algorithme


Toute activit de programmation comporte des risques. Pour limiter ces risques, AlgoBox
dispose de 4 scurits lors de l'excution d'un algorithme (afin d'empcher notamment les
boucles infinies) :
Une boucle seule ne peut aller au del de 500 000 itrations;
Le nombre global d'itrations pour tout l'algorithme ne peut dpasser 5 millions;
Le nombre d'affichages conscutifs est limit 1000 : au-del, l'utilisateur doit confirmer sa
volont de continuer afficher des donnes;
L'utilisateur peut arrter l'excution d'un algorithme tout moment.
Le nombre de rcursions pour la fonction "avance" F2 est limit 100 000.
8. Augmenter l'espace disponible pour la conception d'un algorithme
Afin d'augmenter la hauteur du panneau contenant le code de l'algorithme, il est possible :
de cacher la barre d'outils et le cadre de prsentation de l'algorithme via le menu Affichage
de replier un bloc de code en cliquant sur le "triangle" correspondant (un autre clic sur ce mme
triangle permet de dplier le bloc)

9. Simulation de tableaux deux dimensions


Pour utiliser un tableau dans AlgoBox :
On se sert d'une variable de type LISTE. Exemple : montableau est du type LISTE
Pour affecter une valeur l'lment du tableau correspondant la ligne li et la colonne col, il
suffit de remplir le champ Rang du terme de la liste par : li*(nombre de colonnes)+col. On
obtient alors une ligne de la forme : montableau[li*(nombre de colonnes)+col]
PREND_LA_VALEUR...
Pour rutiliser la valeur d'un lment du tableau dans un calcul, on utilise la syntaxe
: montableau[li*(nombre de colonnes)+col].

10. Edition du code en mode "diteur de texte"


Via l'option "Mode Edition" du menu "Edition", il est possible de passer du mode d'dition du
code par dfaut (avec botes de dialogue) un mode d'dition du code comme sur un diteur de
texte classique. Ce mode d'dition, rserver aux utilisateurs expriments, rpond aux
caractristiques suivantes :
Une ligne ne peut contenir qu'une instruction et chaque ligne doit correspondre exactement
une branche de l'arbre utilis dans le mode d'dition "normal". Ainsi,par exemple, chaque
variable doit tre dclare sur une ligne spare.
Chaque instruction doit respecter strictement la syntaxe AlgoBox, l'exception de
l'instruction AFFICHER qui doit tre suivie d'une toile pour indiquer un retour la ligne et des
instructions TRACER_POINT et TRACER_SEGMENT qui peuvent tre suivies de la couleur utiliser.
(exemple : TRACER_POINT_Bleu, TRACER_POINT_Rouge ou TRACER_POINT_Vert)
Lors de l'utilisation de l'auto-compltion et des commandes du panneau infrieur, le
symbole reprsente un champ complter : pour passer au champ suivant, il suffit d'utiliser la
touche Tab.
Toutes les commandes habituelles d'un diteur de texte (Copier, Couper, Coller, Dfaire,
Refaire, Chercher, Remplacer, Indenter, Commenter...) sont disponibles via le menu contextuel
qui s'affiche aprs un clic-droit dans la zone d'dition.
Il est aussi possible de dfnir trois signets en cliquant dans la bande o figurent les numros de
ligne. Le menu contextuel permet alors d'atteindre la position dfinie par un signet.
Avant d'excuter un algorithme dit dans le mode "diteur de texte", il est vivement
recommand de vrifier d'abord si le code tap est bien reconnu par AlgoBox. Pour cela, il
suffit d'utiliser le bouton Vrifier Code : AlgoBox recre alors l'arbre de code habituel.
Le changement de mode d'dition ne peut se faire qu' partir d'un algorithme vierge. Si un
algorithme est en cours d'dition, il est demand l'utilisateur s'il veut enregistrer son travail
avant de changer de mode.
Toutes les options des menus et toutes les oprations standards (excuter un algorithme, ouvrir,
enregistrer...) restent videmment disponibles dans le mode "diteur de texte".
Le mode d'dition utilis ("normal" ou "diteur de texte")
est enregistr chaque fermeture du programme afin d'tre rtabli par dfaut lors du prochain
dmarrage.

11. Le menu "Extension"


Il est possible d'ajouter des commandes celles disponibles par dfaut dans AlgoBox en
utilisant une "extension" qui est en fait constitue d'un fichier javascript (format .js).

ATTENTION : l'criture d'une extension ncessite de bien connatre le langage javascript


et le fonctionnement d'AlgoBox. Toute erreur dans le code de l'extension empchera le
fonctionnement de l'algorithme AlgoBox qui l'utilise.

Caractristiques :
le code d'une extension doit-tre crite en pur javascript sous la forme de fonctions.
pour pouvoir tre appeles dans un algorithme AlgoBox, les fonctions de l'extension doivent
retourner un nombre ou une chaine (mme si ce retour n'a pas en fait d'importance).
Exemple :
Code dans l'extension (en javascript!) :
function MON_EXTENSION()
{
...
return 1;
}
Appel de la nouvelle fonction dans un algorithme :
mavariable PREND_LA_VALEUR MONEXTENSION()
pour utiliser une extension dans un algorithme AlgoBox, il suffit d'utiliser l'option "Charger une
extension". Pour des raisons de portabilit d'un poste un autre, le chemin complet vers
l'extension n'est pas enregistr dans le fichier AlgoBox : il est donc ncessaire de charger
l'extension chaque ouverture de l'algorithme.
Un algorithme ne peut utiliser qu'une seule extension (il suffit d'inclure toutes les fonctions
supplmentaires dans un mme fichier javascript).
Pour crire ou modifier une extension, un mini-diteur javascript est accessible via
l'option "Ecrire/modifier une extension".

Vous aimerez peut-être aussi