# Programmation Basic Casio/Règles de syntaxe

Informatique
Le mode de fonctionnement de base (« RUN ») de la calculatrice est similaire à un REPL, c'est à dire qu'en l'utilisant de manière normale vous écrivez déjà du « Basic ». Le menu « PRGM », permet de sauvegarder les séquences de calculs les plus utiles de manière plus durable, de leur donner un nom et éventuellement un mot de passe. Même si il est possible de rejouer des calculs précédents avec les touches « replay » dans le mode RUN, ceux-ci finissent tout de même par disparaître au bout d'un certain temps.
   Attention, avec la mise à jour 2.0 de l'OS il existe deux modes d'entrée de formules, celle par défaut permet un affichage graphique des formules et n'est pas compatible avec la syntaxe du Basic. Avant de continuer ce cours mettez votre calculatrice en mode "linéaire" : Dans le mode « RUN », appuyez sur SHIFT - MENU (SET UP) - F2.

### Déroulement du code

L'intérêt d'un programme est de séquencer les instructions, et de les réexécuter à loisir. C'est à dire qu'on les sépare avec un saut de ligne, bien visible dans le code. Une fois qu'on demande à la machine de lancer un programme, il n'y a plus rien à faire, chaque ligne sera exécutée l'une après l'autre, de haut en bas, l'instruction suivante s'exécute lorsque la précédente se termine. Quelques structures de contrôle permettent de choisir précisément quelle est l'instruction suivante à exécuter, on peut également dire « naviguer dans le code » ; ce sont « Goto », « While », « If », « For »…

### Blocs

Les blocs sont délimités par des commandes qui sont complémentaires entre elles : Un bloc conditionnel ouvert par un « If » sera fermé par un « IfEnd », une boucle « While » sera terminée par un « WhileEnd »… Les tests s'effectuent au niveau des commandes qui possèdent un espace supplémentaire à leur droite.

### Instructions

Une instruction se termine par un retour chariot (accessible par une pression sur la touche [EXE] en mode d’édition de programme, par la pression de [SHIFT] puis [EXE] dans le mode Run) ou par un deux-points : « : ». À noter que sur les machines les plus lentes, comme la Graph 35, regrouper des instructions par des deux-points permet de remonter beaucoup plus rapidement le code source du programme lorsqu’on se trouve en bas dans les programmes les plus volumineux (au-delà de 10 000 octets). C’est une des particularités de l’éditeur de programmes : faire défiler le code vers le bas restera toujours rapide quel que soit la taille du programme, mais remonter dans le code devient extrêmement lent (de l’ordre d’une dizaine de secondes entre chaque groupe d’instructions séparés d’un retour chariot) lorsque le programme devient volumineux. Regrouper les instructions qui sont dans le même groupe logique par des deux-points devient donc une pratique indispensable.

### Commentaires

Les lignes commentaires sont précédés par une apostrophe : « ’ » et se terminent par un retour chariot ou par un deux-points : « : ». Si on veut désactiver une instruction il suffit de la mettre en commentaire au lieu de la supprimer et de la réécrire. On peut rajouter des commentaires à intervalles réguliers dans le code et avec des noms fixes, de manière à pouvoir sauter rapidement à telle ou telle portion de code avec la fonction de recherche intégrée dans l’éditeur.

### Espaces et casse

L'interpréteur n'autorise aucun espace superflu. 1+1 est autorisé mais pas 1 + 1 qui lève une erreur de syntaxe. On ne peut ajouter d’espaces nulle part sans que cela ne lève une erreur de syntaxe. Cependant un espace est ajouté automatiquement lorsque Pour rendre le code plus lisible on peut uniquement varier entre les retours chariot et les deux-points pour séparer les instructions, éventuellement rajouter des commentaires pour donner des titres à certaines parties du programme.
La notion de casse n'est pas pertinente car toutes les variables scalaires sont prédéfinies.

### Variables

Il n'est pas possible de déclarer et nommer des variables dans ce langage, on dispose de 28 variables prédéfinies nommées A à Z qui ne peuvent prendre que des valeurs numériques ; il n'est pas possible d'assigner du texte ou des valeurs complexes telles qu'une liste de variables. « -1 », « 2 », « 10e5 », « 6.7 »... sont des valeurs légales, « a », « toto », « (1, 2, 10) » ne sont pas des valeurs légales.
Pour chaque valeur 15 chiffres pour la mantisse et 2 chiffres pour l'exposant sont stockés. 9e99 est la valeur maximale, et toute valeur la dépassant sera tronquée à cette valeur. Les calculs ne se font que sur 9 chiffres significatifs. On peut également accéder aux variables utilisées par les différents modules graphiques, statistiques, matriciels, monétiques de la calculatrice via le menu VARS mais il n'est pas utile de les utiliser en dehors de leur contexte.
Le contenu des variables est retenu même lorsque la calculatrice est mise hors tension tant qu'il y a de l'énergie dans les piles ou la pile de sauvegarde.