Page 1 of 2

Ti basic : Faire un cadre pour entrer des variables

Unread postPosted: 11 Feb 2010, 21:18
by tilakpil
Bonjour,
Je suis nouveau sur le forum,
Je viens d'avoir une TI89T et je commence à programmer,
J'avais avant une Ti 83+ et je me rend compte que beaucoup de choses sont différentes entre les deux types de langages.
Bref, je me suis mis en tête d'essaier de faire un programme simple de résolution d'équation du second degrès, mais je voulai surtout arriver à faire un affichage assez sympas :
Mon idée, un peu pompée sur le menu EQUA de la casio, c'est d'afficher "Ax² + Bx + C = 0
et je voulais insérer une sorte de cadre en desous de chaque lettre pour rentrer les valeurs
du style Ax² + Bx + C = 0
______{__}__{__}__{__}
avec si possible la possibilité de changer de case avec les flèches latérales.
Mon problème est que je ne sais pas du tout comment m'y prendre.
Si une fonction input peut avoir une position déterminée sur l'écran.
Je pensais au getkey ou codtouch pour le déplacement latéral.
Merci de votre aide.

Re: Ti basic : Faire un cadre pour entrer des variables

Unread postPosted: 11 Feb 2010, 21:52
by vx7708
Mic ! Attention !
Dialog...EndDlog sur la 89 !!

Essaie:

Dialog
Title "** TRINOME **"
Text "ax²+bx+c"
Text ""
Request "a=",a,0
Request "b=",b,0
Request "c=",c,0
EndDlog

Re: Ti basic : Faire un cadre pour entrer des variables

Unread postPosted: 11 Feb 2010, 21:55
by vx7708
C'est pas grave. Image

Re: Ti basic : Faire un cadre pour entrer des variables

Unread postPosted: 11 Feb 2010, 22:08
by LinkWebmaster
je voulais insérer une sorte de cadre en desous de chaque lettre pour rentrer les valeurs
du style Ax² + Bx + C = 0
______{__}__{__}__{__}
avec si possible la possibilité de changer de case avec les flèches latérales.


C'est vrai que la boite de dialog est beaucoup plus simple, maintenant si tu veux absolument créer ce programme avec cette particularité graphique c'est également faisable mais bien sur plus long.

Effectivement, il te faut utiliser la fonction getkey()
Tu dessines tes cadres et tu définis une boucle d'attente de touche. Un code défini l'appui des touches numériques qui en fonction de l'affichage de la position du cadre vont s'inscrire directement sur l'écran. Si tu as quelques notions de ti-basic notamment Loop et Getkey(), c'est largement à ta portée.

Re: Ti basic : Faire un cadre pour entrer des variables

Unread postPosted: 12 Feb 2010, 08:07
by tilakpil
Merci à tous pour vos réponse.
Je connaissais déjà la boite Dialog, je pense aussi que sa pourrai remplacer ce que je veux faire mais maintenant que je suis en vacances je m'en fiche je veux arriver à faire ces cadres lol, parce que je trouve que c'est plus pratique et plus simpas d'avoir et de pouvoir changer toutes les donnés en même temps, du coup si vraiment je n'y arrive pas je me retournerai vers "Dialog---EndDlog"
En réalité je suis un ancien (depuis ma 4ème...) utilisateur et programmateur de graph 35 qui est seulement passé sur Ti au début de cette année scolaire, mais le langage se ressemble bien entre les deux machines (même si il y a beaucoup de différences, la philosophie reste la même je trouve)
du coup j'aurai besoin d'un peu plus de précision quant à ta réponse LinkWebmaster,
Je dessine mes cadres à coup de Line et Plot,
Ensuite je fait une boucle d'attente de touche et avec donc une Getkey() dedans (Note : comment elle s'utilise Getkey, entre parenthèse c'est le nom de la variable de stockage du code touche ?ou il faut faire Getkey() Sto Variable...)
Puis je sors de la boucle si il y a la variable associée à Getkey différente de 0
Et là que faire, comment permettre l'écriture sur un endroit de l'écran définit ?
Comment je fait pour inscrire directement sur l'écran en fonction de la position du cadre,
Merci de vos réponses

Re: Ti basic : Faire un cadre pour entrer des variables

Unread postPosted: 12 Feb 2010, 09:12
by LinkWebmaster
du coup j'aurai besoin d'un peu plus de précision quant à ta réponse LinkWebmaster,

Pas de soucis, d'autant que moi aussi je suis en vacance :D:

Je dessine mes cadres à coup de Line et Plot,

Oui, mais tu peux également, à la fin, tout enregistré sous un fichier PIC (sauvegarde du dessin). Ce qui éviteras à la calc de tout redessiner avant et cela sera beaucoup plus pratique ensuite de manipuler une variable PIC plutôt qu'un tas de line.

Ensuite je fait une boucle d'attente de touche et avec donc une Getkey() dedans

Tout a fait. Cela devrait te donner :
:loop
:getkey()-k (j'utilise tout le temps "k" pour getkey car c'est plus simple d'avoir toujours la même variable en référence pour une fonction)
:if k=49:pxltext "1",a,b (donc là si tu appuis sur la touche "1" du clavier , la calc affiche le chiffre 1 à l'endroit défini dans les variables "a" et "b". Variables que tu auras définis avant, en fonction du placement de tes cadres. En remarque si le chiffre apparait toujours au même endroit tu peux donner une valeur numérique constante à "a" et "b" sans passer par des variables)
:if k=50:pxltext "2",a,b
... et ainsi de suite pour les autres chiffres par contre pour les nombres c'est plus complexe. Créer déjà ton prgm avec des chiffres en laissant de la place dans tes cadres pour les nombres. Sinon cela se fait avec la fonction "".

je sors de la boucle si il y a la variable associée à Getkey différente de 0


Non, tu ne sors de la boucle qu'une fois que tout tes cadres sont remplis.
Utilise getkey() avec les flèches directionnelles pour te déplacer d'un cadre à l'autre. D'ailleurs si tu ne veux pas t'ennuyer avec l'appui des touches tu peux définir un cadre avec une variable de "1" écrite dedans puis avec les touches haut et bas cela augmente ou diminue cette valeur. Je viens de penser à ca, au cas ou tu voudrais placer des grosses valeurs dans chacun des cadres.

Voilà c'est déjà un début de réponse mais ca devrait t'aider. Au fait pour le code des touches j'ai repris celui sur V200... vérifie que se soit bien le même sur 89 (mais je suis sur que oui)

Re: Ti basic : Faire un cadre pour entrer des variables

Unread postPosted: 12 Feb 2010, 09:23
by tilakpil
Je viens de faire un autre programme en parallèle avec Dialog_EndDlog
Voilà ce que ça donne pour le début
Image
Mais quand je le lance ...
Image
D'où viens cette erreur ?
Quand je fait Request "a=",a,0
a est une variable chaine ou une valeur ?
J'ai remarqué que dans les calcul les variables sont entre guillemets, je pense que c'est ça mon problème, j'avais alors essaier chaîne(a)-a mais ça n'a pas résolu le problème
Merci encore pour votre aide

PS: disp d c'était pour voir si il arrivait à calculer d et ça n'a pas l'air d'être le cas

Re: Ti basic : Faire un cadre pour entrer des variables

Unread postPosted: 12 Feb 2010, 09:26
by tilakpil
Merci de tes réponses Link, je met le dernier en standby et je reprend l'autre ;)

Re: Ti basic : Faire un cadre pour entrer des variables

Unread postPosted: 12 Feb 2010, 09:57
by tilakpil
Bon j'ai un peu de mal parce que j'ai ma calculette en français, alors je veux bien la mettre en anglais, mais après pour m'y retrouver en controle c'est plus la même ...
Bref, j'ai dessiner un rectangle puis je l'ai enregistrer en image
Après comment puis-je l'afficher ?
Et autre chose, j'ai fait pxltext "2",10,50 juste pour voir ce que ça donnais, il me lance la fenêtre graphique avec les axes et l'ancien rectancle (que je n'ai pas effacer). . .

Re: Ti basic : Faire un cadre pour entrer des variables

Unread postPosted: 12 Feb 2010, 10:39
by LinkWebmaster
Ton programme est bon dans sa construction mais après y a pas mal de petites erreurs que tu pourras reprendre dans le manuel de la calc.


Quand je fait Request "a=",a,0
Déjà je ne vois pas pourquoi tu rajoutes ",0". D'ailleurs ça m'étonne que la calc ne renvoi pas d'erreur. Pour les guillemets utilise la fonction expr(a)-a plutôt (de même pour b et c).

Réessaye déjà comme ca pour ta boite de dialog. C'est pour ca que le test n'est ni faux ni vrai, c'est que D n'est pas considéré comme une variable

Normalement ta vrariable D devrait s'afficher correctement.

alors je veux bien la mettre en anglais
... euh, tu peux la laisser en français...

Bref, j'ai dessiner un rectangle puis je l'ai enregistrer en image
Après comment puis-je l'afficher ?
Et autre chose, j'ai fait pxltext "2",10,50 juste pour voir ce que ça donnais, il me lance la fenêtre graphique avec les axes et l'ancien rectancle (que je n'ai pas effacer). . .


Euh... comme tu es en vacance, je dirais d'en profiter pour te prendre une demi-journée pour bien étudier le manuel et lire différent tuto sur le ti-basic. Car bien qu'il soit considéré comme un langage ultra simple, il te faut tout de même en maitriser ses bases.
Regarde au chapitre Xorpic, Rclpic, Rplcpic...