« TI-Basic » : différence entre les versions

Aller à la navigation Aller à la recherche
2 210 octets ajoutés ,  20 avril 2013
Aucun résumé des modifications
Ligne 18 : Ligne 18 :
== Le TI-Basic sur les TI-Nspire ==
== Le TI-Basic sur les TI-Nspire ==


La philosophie d'un programme TI-Basic pour Nspire est de n'être qu'une simple variable comme une autre, ayant toutefois le privilège de posséder un éditeur pour sa création. Ainsi, la création d'un programme se fait de manière interne au classeur ouvert dans l'activité utilisée (ou à l'application brouillon). Un programme peut donc d'éditer soit dans l'application calcul, comme n'importe-quelle variable, ou, de manière plus adaptée, avec l'éditeur, accessible avec DOC, 4 (Insertion), A (Éditeur de programmes) puis l'option désirée (Nouveau, ouvrir, importer ou affichage). Les touches CTRL B ont alors pour effet de stocker le programme en cours d'édition dans la variable (mais pas d'enregistrer le classeur courant).
La philosophie d'un programme TI-Basic pour Nspire est de n'être qu'une simple variable comme une autre, ayant toutefois le privilège de posséder un éditeur pour sa création. Ainsi, la création d'un programme se fait de manière interne au classeur ouvert dans l'activité utilisée (ou à l'application brouillon). Un programme peut donc s'éditer soit dans l'application calcul, comme n'importe-quelle variable, ou, de manière plus adaptée, avec l'éditeur, accessible avec DOC, 4 (Insertion), A (Éditeur de programmes) puis l'option désirée (Nouveau, ouvrir, importer ou affichage). Les touches CTRL B ont alors pour effet de stocker le programme en cours d'édition dans la variable (mais pas d'enregistrer le classeur courant).


Par défaut, un programme est interne à l'activité à laquelle il est associé et ne sera donc pas accessible en-dehors de ce cadre. Pour palier à cette limite, on peut déclarer un programme avec l'attribut "LibPub" ce qui lui permet d'être visible dans le catalogue et utilisable partout, lorsque le classeur correspondant a été placé dans le dossier MyLib et que le rafraichissement des bibliothèques a été effectué (par exemple avec DOC 6).
Par défaut, un programme est interne à l'activité à laquelle il est associé et ne sera donc pas accessible en-dehors de ce cadre. Pour palier à cette limite, on peut déclarer un programme avec l'attribut "LibPub" ce qui lui permet d'être visible dans le catalogue et utilisable partout, lorsque le classeur correspondant a été placé dans le dossier MyLib et que le rafraichissement des bibliothèques a été effectué (par exemple avec DOC 6).


Un algorithme pour TI-Nspire peut soit être un programme, soit une fonction. L'avantage d'une fonction est de pouvoir renvoyer une valeur, mais elle perd alors certaines facultés tels les entrées (Request, RequestStr) et la modification de variable globale, par exemple par référence passée en argument).
Un algorithme pour TI-Nspire peut soit être un programme, soit une fonction. L'avantage d'une fonction est de pouvoir renvoyer une valeur, mais elle perd alors certaines facultés tels les entrées (Request, RequestStr) et la modification de variable globale, par exemple par référence passée en argument).
Pour la définition de fonctions simples sur l'écran principal, cela se fait de la même manière que les autres variables, en ajoutant entre parenthèses les arguments pris en entrée. Par exemple, pour définir f comme étant la fonction cosinus composée avec la racine carrée :
<syntaxhighlight lang="perl">f(x) := cos(sqrt(x))</syntaxhighlight>
Un affichage en écriture naturel de la racine carrée est effectué après appui sur la toucher ENTER. Une autre syntaxe, plus explicite, est possible :
<syntaxhighlight lang="perl">Define f(x) = cos(sqrt(x))</syntaxhighlight>
On notera en particulier l'utilisation du "=" à la place du ":=" dans ce cas là. On peut ensuite à nouveau utiliser une syntaxe plus élaborée :
<syntaxhighlight lang="perl">Define f(x) = Func
Return cos(sqrt(x))
EndFunc</syntaxhighlight>
Le "Return" permet de sortir de la fonction pour renvoyer une valeur, il est facultatif, et dans le cas de son absence, la dernière valeur calculée est renvoyée. Cette syntaxe plus complète est utilisée automatiquement par l'éditeur, et pour l'utiliser dans une page de calculs, on utilisera Menu, 9 (Fonctions & programmes), 2 (Func...EndFunc) : cela permet de faire une fonction renvoyant une valeur calculée en plusieurs étapes, à raison de une étape par ligne. Exemple :
<syntaxhighlight lang="perl">Define f(a,b,c) = Func
Disp "Résolution de l'équation ax²+bx+c=0 :"
Local delta,solutions
delta := b²-4a*c
Disp "Le discriminant est ", delta
If delta>0 Then
solutions := {(-b-sqrt(delta))/(2*a),(-b+sqrt(delta))/(2*a)}
Disp "Il est positif, il existe donc 2 solutions réelles : ", solutions[1], " et ", solutions[2]
ElseIf delta<0 Then
Disp "Il est négatif, il n'y a donc pas de solution réelle."
solutions := undef
Else
solutions := -b/(2*a)
Disp "Il est nul, l'unique solution est donc ", solutions
EndIf
EndFunc
</syntaxhighlight>
Pour l'utilisation de variables intermédiaires, le "Local" est obligatoire dans une fonction : il définit une variable comme locale à celle-ci ce qui empêche bien de modifier des variables utilisateur. La seule commande de catégorie I/O utilisable dans une fonction est Disp, ce qui permet d'afficher les étapes d'un calcul.


(à suivre...)
(à suivre...)
14

modifications

Menu de navigation