Calculator Community > [FR] Autre Sujets de Programmation TI, Casio et Aide

Un Tuto Pour Grammer

(1/13) > >>

Xeda112358:
J'espere qu'il y aurait un tuto pour Grammer en français, donc j'ai decidé commencer ce projet, mais je ne parle pas français (bien).
Grammer(un tuto en français)   Bonjour, je m'appelle Zeda et j'ai fais le langage de programmation "Grammer." Premièrement, je ne parle pas français, donc la documentation peut-être mauvais (et, aussi, la grammaire). Le Grammer est une langage pour le TI-83+/84+/SE. Il y a un version qui est une programme ici, mais l'application a plus des fonctions, vitesse, et les autres fonctionnalités.

Qu'est-ce que Grammer? Grammer est une langage interprété.
Comment est-ce-que vous faites une programme? Utilisez l'editeur du TI-BASIC, mais le première ligne a besoin de le code:

--- Code: ---.0:

--- End code ---
Aussi, j'ajoute le token Return:

--- Code: ---.0:Return

--- End code ---
Comment est-ce que vous arrêter une programme? Le token Stop est le token que l'arrête.
Faites une Programme   Je voudrais commencer le tuto avec une exemple. Vous pouvez "parler" avec le programme avec les fonctions et les tokens, mais la programme peut vous "parler", aussi. Donc, il y a des fonctions pour la calcul, entée, et sortie. Par exemple:

--- Code: --- :.0:Return
:.LOOP            ;un label
:getKey→A         ;le pression sur la touche enregistrées dans le var A
:If A=0           ;Vérifie si A est zéro
:Goto Lbl "LOOP   ;va au le label "LOOP" s'il n'y a pas un pression de touche
:ClrDraw          ;efface l'écran
:Text('0,0,A      ;écrit le nombre en le var A dans l'écran
:DispGraph        ;affiche l'écran
:Stop             ;Arréte la programme

--- End code ---

Blue Raven:
Hey Xeda, voici une version corrigée de ton post. Si tu veux de l'aide, tu peux poster directement en anglais, je pourrais traduire. :)

Grammer
(un tuto en français)
   Bonjour, je m'appelle Zeda et j'ai créé le langage de programmation "Grammer." Tout d'abord, je précise que je ne parle pas français, donc la documentation risque d'être mauvaise (et la grammaire aussi). Grammer est donc un langage pour les TI-83+/84+/SE. Il y a une version en programme compilé ici, mais l'application a plus de fonctions et est plus rapide.

Qu'est-ce que Grammer ? Grammer est une langage interprété.
Comment faire un programme? en utilisant l'éditeur de TI-BASIC, sans oublier ce code sur la première ligne :


--- Code: ---.0:
--- End code ---

J'ajoute aussi le token Return :
   

--- Code: ---.0:Return
--- End code ---

Comment arrêter un programme ? En utilisant le token Stop.

Créer un premier programme
   Je voudrais commencer le tuto avec un exemple. Vous pouvez "parler" avec le programme grâce aux fonctions et aux tokens, mais la programme peut vous "parler" aussi. Donc, il y a des fonctions pour les calcul et les entrées-sortie. Par exemple :


--- Code: ---.0:Return
.LOOP            ;un label
getKey→A         ;la touche pressée est enregistrée dans la variable A
If A=0           ;Vérifie si A vaut zéro
Goto Lbl "LOOP   ;va au le label "LOOP" s'il n'y a pas de touche pressée
ClrDraw          ;efface l'écran
Text('0,0,A      ;écrit le nombre contenu dans la variable A à l'écran
DispGraph        ;affiche l'écran
Stop             ;Arrête le programme

--- End code ---

Le code ci-dessus va afficher la touche pressée, mais il y a de meilleures façons de le faire que je montrerais plus tard. Grammer utilise des entiers compris entre 0 et 65535 (comme en Axe). Vous pouvez également stocker ces nombres dans les variables A, B, C, etc, ainsi que dans A', B', C', etc. Le code getKey→A stocke la valeur retournée par getKey dans A.
Le token Text( sert à afficher du texte et des nombres. La syntaxe est Text(Y, X, <<valeur>>) avec Y un nombre entre 0 et 58 et X entre 0 et 23 (les caractères font 4 pixels de large). Le texte est automatiquement passé à la ligne si nécessaire. Pour afficher un nombre, il faut utiliser Text('. Pour afficher du texte, on peut faire quelque chose comme cela :


--- Code: ---.0:Return
ClrDraw
"Hello!→A
Text(0,0,A
DispGraph
Stop
--- End code ---

Malgré cela, A ne contient pas la chaîne de caractères ! A contient un pointeur sur la chaîne. Un pointeur contient un nombre qui pointe sur un endroit de la RAM. Voici un autre exemple, plus compliqué, utilisant des pointeurs :


--- Code: ---.0:Return
Send(1,"ETest→Z      ;Crée un programme en BASIC et en stocke l'adresse dans Z
int(Z,49             ;Cela écrit un octet contenant 49 à l'endroit de la mémoire pointé par Z
Stop
--- End code ---

Comme Z pointe sur le programme en BASIC, 49 (qui correspond à "1") est écrit dans le premier octet du programme. Allez-y, ouvrez le programme et vous verrez qu'il y a écrit "1". :)

Xeda112358:
Thank you much! I am trying to think of what more to add at the moment. Thanks much!
I think this can be added:

The above code will display a keypress, but there are better ways to do this that I will show later. Grammer uses integers 0 to 65535 (similar to Axe). You can also store these numbers to variables like A,B,C, et cetera, and you can also store to A',B',C' the same way. The code getKey→A stores the value output from getKey into A.

The Text( token is used to display strings or numbers. The format is Text(Y,X,<<value>> where Y is a number from 0 to 58 and X is 0 to 23 (it draws every character as 4 pixels wide). It also wraps text to the next line if it needs to. To draw a number, you need to use Text('. To draw text, you can do something like this:

--- Code: ---.0:Return
ClrDraw
"Hello!→A
Text(0,0,A
DispGraph
Stop

--- End code ---
However, A does not hold the string! A has a pointer to the string. A pointer has a number that points to a spot in RAM. Here is another, more complicated example using pointers:

--- Code: ---.0:Return
Send(1,"ETest→Z      ;Creates a BASIC program variable and stores the location in Z
int(Z,49             ;This writes the byte 49 to the spot in memory pointed to by Z
Stop

--- End code ---
Since Z points to the BASIC program, 49 (which corresponds to "1") is written to the first byte of the program. Go ahead :) Open up the program and you will see it has a 1 :)

Blue Raven:
J'ai traduit tout ça et je l'ai ajouté à mon premier post. :)

DJ Omnimaga:
Je suis content de voir un tutoriel en français pour grammer. :D Quand il sera fini tu devrais le placer dans la section tutorials ici aussi :D http://www.omnimaga.org/index.php?action=articles;cat=11

Navigation

[0] Message Index

[#] Next page

Go to full version