XCAS


Une carte mentale


Voici une carte mentale qui permet de regrouper les notions élémentaires indispensables à la construction d'un algorithme et d'un programme, elles seront découvertes progressivement, mais devront être connues et maîtrisées en fin d'année. La notion de variable est omniprésente et devra rapidement être assimilée, il faudra également rapidement connaître le vocabulaire spécifique à l'environnement informatique, puis se familiariser avec les tests, les opérateurs logiques et les boucles. La notion de sous programme viendra plus tardivement dans l'année, mais elle est indispensable pour la constitution de programmes consistants.


La prise en main


Nous consacrerons ce tutoriel à la programmation que l'on peut réaliser avec XCAS.
Xcas est un logiciel que l'on peut télécharger ici
Il est indispensable d'installer ce logiciel chez vous.
Exécutez le logiciel.
Vous arrivez sur cette interface:


Création d'un programme


Pour créer un programme, une fonction ou une procédure, on procèdera toujours de la même façon:
Cliquer sur l'onglet Prg de la barre de menu.
Puis vous sélectionnerez Nouveau Programme dans le menu qui s'affiche.
Une fenêtre s'ouvre, permettant de définir une fonction. Dans un premier temps, cliquer sur annuler, afin de créer un programme principal.


Voici un petit programme permettant de découvrir les différents types de variables à connaître en BTS SIO:
L'affectation se fait avec :=
La première affectation d'une variable s'appelle une initialisation.
Les différentes lignes de code se terminent par ;


Exécuter le programme réalisé


Il suffit de cliquer sur l'onglet OK.
Si le programme contient une ou des erreurs, un message l'indique.


Les opérateurs mathématiques sont :

Un exemple de structure conditionnelle



Un exemple de boucle "pour"


La boucle permet de répéter une, ou plusieurs instructions. La boucle pour s'utilise si l'on sait à l'avance combien de fois la boucle devra tourner pour obtenir le résultat attendu.


Un exemple de boucle "tant que"


La boucle tant que s'utilise si l'on ne sait pas l'avance combien de fois la boucle devra tourner pour obtenir le résultat attendu.


Pour sortir de la boucle tantque, il faut et il suffit que l'expression booléenne prennent la valeur faux. Il faudra donc veiller à ce que l'expression booléenne deviennent fausse, sinon la boucle ne se terminera pas, on aura une boucle infinie.

Vous retrouverez un autre exemple ici ici

Un exemple sur les booléens


Les booléens sont très importants, ils permettent de contrôler les boucles et les tests conditionnels.


Il n'y a que deux valeurs booléennes : vrai , faux.
Les opérateurs sont :

  • et
  • ou
  • non
Les tables de vérité à connaître:

Vous retrouverez le programme ici ici

Un exemple sur les chaines de caractères


Une chaîne de caractères est une donnée construite, qui pourra contenir une 0, 1 ou plusieurs caractères.
Une chaîne de caractères est une donnée séquentielle, c'est à dire que les caractères sont numérotés à partir de 0.
Une chaîne de caractères est une donnée non mutable, c'est à dire qu'il ne sera pas possible de modifier un caractère de cette chaîne par affectation
La chaine vide est: ""
Tout nombre peut être considéré comme chaîne de caractères "12225".
La concaténation se fait à l'aide de +.
La saisie d'une chaine se fait à l'aide de : saisir_chaine.
Les caractères d'une chaine sont numérotés à partir de 0.
Voici un exemple:


Vous retrouverez une variante du programme ici

Un exemple sur les tableaux


Un tableau est une donnée construite, qui pourra contenir une 0, 1 ou plusieurs données.
Un tableau est une donnée séquentielle, c'est à dire que les données qu'il contient sont numérotées à partir de 0.
Un tableau est une donnée mutable, c'est à dire qu'il sera possible de modifier une de ses données par affectation
Le tableau vide est: []
Les éléments d'un tableau sont numérotés à partir de 0.
Voici un exemple:


Vous retrouverez une variante du programme ici

Un exemple de procédure


Un programme principal peut appeler des sous-programmes.
Il existe deux types de sous-programmes: la procédure et la fonction
La procédure ne retourne pas de valeur vers le programme principal.
Dans l'exemple la procédure se contente d'effectuer un affichage.
Ici n est le paramètre de la procédure.


Vous retrouverez le programme ici

Un exemple de fonction


Un programme principal peut appeler des sous-programmes.
Il existe deux types de sous-programmes: la procédure et la fonction
La fonction retourne une valeur vers le programme principal.
Elle se termine donc pas l'instruction "retourne" ou "return"
. Dans l'exemple la fonction moyenne(x,y) retournera vers le programme principal la moyenne des deux valeurs de x et de y
Ici cette fonction a deux paramètres x et y.


Vous retrouverez le programme ici

Un exemple de fonction récursive


Une fonction récursive est une fonction qui s'appelle elle même.
Sa structure contiendra un "si...alors(condition d'amorçage) sinon (appel de la fonction) fin de si"
L'exemple proposé permet de calculer la somme des nombres de 1 à n.
n étant un entier naturel saisi dans le programme principal.
Par défaut, XCAS ne permet que 50 itérations récursives.
En cliquant sur Cfg, puis en sélectionnant "configuration du cas", il est possible de repousser cette limite à 100.


Vous retrouverez le programme ici

Utilisation du débogueur


La fonction debug() permet de déboguer une fonction ou une procédure en plaçant son nom en paramètre.
Déboguer consiste à exécuter le sous programme pas à pas et à suivre l'évolution des valeurs des différents variables locales.
Ceci permet peut aider à comprendre un programme, ou à déterminer l'origine d'une erreur.


Voici la fenêtre :

Une pression sur la touche F5 permet d'exécuter la ligne suivante.
Vous retrouverez le programme ici

XCAS en ligne, en version béta.


Cliquer sur puis sélectionner Xcas pur et cliquer sur Créer.
Ecrire votre code en Xcas.
Cliquer sur Executer pour tester votre programme.