1 342
modifications
Ligne 295 : | Ligne 295 : | ||
==Programmation== | ==Programmation== | ||
== TI-Basic == | |||
Langage de base utilisé pour les mathématiques sur TI-Nspire, il est pratique pour automatiser les taches fastidieuses. | |||
Cependant, ce langage simple ne permet pas de gérer des graphismes, ni même des boutons/fenêtres/menus, ce qui le rend inapte à tout programme évolué. | |||
<syntaxhighlight lang='basic'> | |||
Define randprgm()= | |||
Prgm | |||
For i,1,5 | |||
strinfo:=”Random number “ & string(rand(i)) | |||
Text strinfo | |||
Next | |||
EndPrgm | |||
</syntaxhighlight> | |||
''La critique du TI-Basic Nspire est plus sévère que celle des autres calculatrices, sur lesquelles la gestion de graphismes était possible.'' | |||
== Lua == | |||
Principale nouveauté des OS 3.0 et supérieurs, le langage Lua permet d'utiliser des graphismes dans les programmes. | |||
<syntaxhighlight lang='lua'> | |||
input = "" | |||
function on.paint(gc) | |||
gc:drawString(input,5,5,"top") -- display string | |||
end | |||
function on.charIn(char) | |||
if string.len(input) <= 25 then -- limit of 25 chars | |||
input = input..char -- concatenate | |||
platform.window:invalidate() --screen refreh | |||
end | |||
end | |||
function on.backspaceKey() | |||
input = string.usub(input,0,-2) -- deleting last char | |||
platform.window:invalidate() | |||
end | |||
</syntaxhighlight> | |||
Normalement éditable uniquement sur ordinateur, puis compilable en .tns, il est désormais possible de programmer en Lua directement sur la calculatrice grâce à l'interpréteur [[OcLua]]. | |||
== C == | |||
Avec [[Ndless]], et donc seulement sous une liste précise de versions d'OS, il est possible de lancer des programmes en C (et pas en C++), compilés exprès. | |||
Des bibliothèques sont là pour aider les portages, notamment [[nSDL]]. | |||
== Asm == | |||
Avec [[Ndless]], et donc seulement sous une liste précise de versions d'OS, il est possible de lancer des programmes en Assembleur ARM ([[Asm]]), compilés exprès. | |||
==Emulation== | ==Emulation== |