J'écris un programme pour mon calculateur TI-nspire dans TI-BASIC, une version optimisée de BASIC. D'après ce que je peux dire, TI-BASIC est un langage compilé. J'ai eu plus d'expérience en travaillant avec des langages de script, où vous pouvez définir i comme i + 1, où l'interpréteur ajoute la valeur précédente de i à 1 et fait que la nouvelle valeur de i. Mais puisque BASIC, à ma connaissance, est compilé, la calculatrice va définir la valeur de i à l'équation de i + 1 et la boucle. Y at-il un moyen de définir la valeur de i au résultat au lieu de l'équation?i = i + 1 dans les langages compilés?
2
A
Répondre
0
Votre compréhension est erronée. La compilation ne change pas la sémantique d'une affectation. C'est toujours une mission.
Et puis, quel nombre utiliserait le compilateur comme solution pour i = i + 1?
2
Vous vous trompez, il est parfaitement correct de référencer une variable en affectant une valeur à la même variable, cela n'aboutit pas à une boucle. Cependant, dans TI-Basic, vous n'utilisez pas l'opérateur =
pour affecter une valeur à une variable.
Pour z80 et 68k calculatrices utilisent le →
, le caractère comme ceci:
Local x
2→x
x+1→x
Return x
Ce retourne 3
. (Testé sur une TI-89.)
Sur une utilisation :=
, comme TI-Nspire ceci:
Local x
x:=2
x:=x+1
Return x
Cela renvoie également 3
.
Pouvez-vous écrire votre code, quels sont les résultats attendus et quels sont les résultats * réels *? –
Je serais très surpris si votre calculatrice avait un compilateur plutôt qu'un interprète plutôt léger. –
N'utilisez-vous pas la syntaxe "store" sur ces calculatrices? 'i + 1 → je'? Vérifiez également cette page: http://tibasicdev.wikidot.com/nspire –