1

Je me demandais s'il existait une fonction de troncature sur TI, pare que round( est très bien mais l'on ne peut pas arrondir à plus de 9 décimales !

Et sinon comment peut-on faire ses propres applications Flash pour TI ? c'est quand même mieux que le basic ou l'assembleur !

merci
Louis, préférer la force de l'argument à l'argument de la force...

2

les applicatiosn flahs, c'est fait en assembleur. (et peu aprécier par les programeur car un peu contraignant, et l'IDE/le compilo sont un peu dépassé)

Hum, ensuite, tu pourait préciser ton modèle de Ti afin que l'on puisse mieux t'aider ?
«Les gens exigent la liberté d’expression pour compenser la liberté de pensée qu’ils préfèrent éviter.» - Sören Kierkegaard

La République, c’est comme la syphilis : quand on l’a attrapée, soit on se fait sauter le caisson, soit on essaie de vivre avec.

3

jai une 84+
et les programmes Assembleur pour 83/+ marchent ils aussi sur 84+ ? je veux pas griller mon processeur je viens davoir ma ti
Louis, préférer la force de l'argument à l'argument de la force...

4

Mais bien sur qu'ils marchent, et nons ils ne vont pas griller ton procésseur grin
«Les gens exigent la liberté d’expression pour compenser la liberté de pensée qu’ils préfèrent éviter.» - Sören Kierkegaard

La République, c’est comme la syphilis : quand on l’a attrapée, soit on se fait sauter le caisson, soit on essaie de vivre avec.

5

ok et pour la troncature ?
Louis, préférer la force de l'argument à l'argument de la force...

6

en fait la troncature ça m'intéresse car je voudrais faire un programme un peu comme ça : http://x42.com/cgi-bin/pitrainer.cgi
voilà ce que j'ai déjà fait (sur ordinateur) :

___________

3.14159265358979323846264338327950288419716939937510582097494459230781640628620899862803482534211706798214808651328230664709384460955058223172535940812848111745028410270193852110555964462294895493038196-->P
Output(4,1,"pi-trainer
Pause
Lbl 1
ClrHome
Menu("menu principal","commencer",A,"quitter",Z
Lbl Z
ClrHome
Stop
Lbl A
Input "pi = ? ",Q
For(I,0,200)
200-I-->N
If round(P,N)=Q:Goto AW
End
Lbl AW
ClrHome
If N>0
Then
Output(1,1,"Bravo ! tu connais
Output(3,1,N
Output(4,1," décimales de pi !
Else
Output(1,1,"Tu ne connais aucune décimale de pi, il est temps de t'y mettre !
End
Pause
ClrHome
Output(1,1,"Voici les 5 décimales suivantes :
Output(3,1,round(P,N+5
Pause
ClrHome

_________

j'ai mis 200 décimales de pi dans le programme (environ...) et le problème c'est qu'on ne peut pas arrondir au-dessus de 9 décimales !
déjà arrondir pi c'est pas génial parce que si l'utilisateur connaît 3.1415 de pi le programme va dire que l'utilisateur connaît 3 décimales de pi (car pour lui 4 décimales c'est 3.1416 car il y a un 9 après) et ensuite dira "les 8ères décimales de pi sont 3.14159265 l'utilisateur va trouver ça bizarre ! vous comprenez ? c'est pour ça que je cherche une fonction de troncature... en espérant aussi que cette fonction pourra tronquer à plus de 9 décimales !
Louis, préférer la force de l'argument à l'argument de la force...

7

PS: vous avez remarqué que le programme n'est pas tout à fait fini, mais c'est pas ça l'important ! smile
Louis, préférer la force de l'argument à l'argument de la force...

8

voilà la fin
_____

Menu("jeu","continuer",A,"arrêter",1

_____
Louis, préférer la force de l'argument à l'argument de la force...

9

Hum, je ne pense pas que ta Ti enregistre toutes tes décimales rentrées dans P. ( elle en enregistre un peu plus que ce qu'elle peut afficher au m&ximum, mais sa ne doit pas dépasser la vaingtaine je crois)

Bon, de plus, quand t'utilse round( , sa doit arrondire et non tronqué, ce qui peut poser des problèmes grin (décallage de la bonne réponse d'un rang dans cerains cas)
Pour tronquer, je pense qu'une solution pas trop mauvaise est de prendre la parti entière du nombre multiplié par 10 puissance N
ie, par exemple si tu veut avoir que N décimales, du fait int(P*10^N) wink


«Les gens exigent la liberté d’expression pour compenser la liberté de pensée qu’ils préfèrent éviter.» - Sören Kierkegaard

La République, c’est comme la syphilis : quand on l’a attrapée, soit on se fait sauter le caisson, soit on essaie de vivre avec.

10

ok et une dernière question (pas forcément la dernière en fait) : quelle est la différence entre iPart( et int( ?
Louis, préférer la force de l'argument à l'argument de la force...

11

j'ai fait avec 10^N mais ça donne ça si le chffre est trop gros :

_____
voici les 5 déci
males suivantes
1.415926536E19




_____

ça tient pas sur 1 ligne alors le programme abrège, comment faire ?
Louis, préférer la force de l'argument à l'argument de la force...

12

Eu, oui après il faut re-diviser grin, j'avais oublier de le taper tongue
Donc, tu fait
10^(-N)*int(P*10^N)

Et voilà, la sa devrait être impec wink
«Les gens exigent la liberté d’expression pour compenser la liberté de pensée qu’ils préfèrent éviter.» - Sören Kierkegaard

La République, c’est comme la syphilis : quand on l’a attrapée, soit on se fait sauter le caisson, soit on essaie de vivre avec.

13

ok merci je vais essayer et je te dirai le résultat, mais j'ai l'impression qu'il va falloir qques adaptations ds le reste du programme. merci qd même ! tu m'as bien aidé !
Louis, préférer la force de l'argument à l'argument de la force...

14

le pb c'est que ça arrondit le résultat :
_____
voici les 5 suivantes :
1415926536

_____
alors j'essaie de prendre les 20 eres par exemple puis les 10eres multipliées par 10^10 et je soustriat le 1er au 2e (enfin tu vois quoi) voilà la nelle source :

euh on en fait la source est sur ma calculette et je paux pas transférer le programme de ma calc. vers mon ordi. quand j'ouvre TI ProgramEditor ça fait :

"Could not open the file "C:\ blablabla \PITRAIN.8xp".
Unknown tag value in program image: 187 192

J'utilise TI ProgramEditor BETA (j'ai pas trouvé la version finie) 2004.1.28.1047, en anglais puisque c'est la bêta...
Louis, préférer la force de l'argument à l'argument de la force...

15

Bon, pour "débuger", faut mieu sortir les deux lignes ou y'a le problèmer et faire mumuse avec sur l'écran de calcul wink
Ensuite, je tye l'ai déjà dit, tu peut pas mettre un trop grand nombre de décimale (12 max, je vien de retester)
Par contre, π est une variable spéciale qui à beaucoup plus de décimale enregistrées, donc il vaut mieux l'utiliser directment..

Bon ensuite, ma méthode marche bien (j'ai re-tester également), donc le problème de l'arrondi ne v ient pas de la. Il vient surrement de l'affichage, ou la sa arrondi. Il faut que tu tronque pile à la limite de ton affichage. (et donc, entre chaque coup, tu soustrait+re-multipli pour avoir un nombre potable à utiliser)
«Les gens exigent la liberté d’expression pour compenser la liberté de pensée qu’ils préfèrent éviter.» - Sören Kierkegaard

La République, c’est comme la syphilis : quand on l’a attrapée, soit on se fait sauter le caisson, soit on essaie de vivre avec.

16

la calculette a en mémoire pi avec 20 décimales au max. je crois donc... ça suffit pas
Louis, préférer la force de l'argument à l'argument de la force...

17

OUi, mais c'est encor pire de l'enregistrer dans une seule variable. Bon, soit t'essay de faire mu-muse avec les strings, soit avec "plusieurs" variables (par exemple une liste)
«Les gens exigent la liberté d’expression pour compenser la liberté de pensée qu’ils préfèrent éviter.» - Sören Kierkegaard

La République, c’est comme la syphilis : quand on l’a attrapée, soit on se fait sauter le caisson, soit on essaie de vivre avec.

18

j'ai essayé avec la liste mais c'est encore à modifier parce que ça change une grande partie du programme...
on verra...
Louis, préférer la force de l'argument à l'argument de la force...

19

t'as raison j'ai TOUT recommencé depuis le début et ça marche beaucoup mieux ! enfin j'ai dû utiliser des getkey pour détecter les touches car il fallait qu'il réagisse tous les 10 chiffres entrés pour aller à une nouvelle ligne de la liste... mais bon là j'ai presque fini...
merci encore pour ton aide depuis le début....
Louis, préférer la force de l'argument à l'argument de la force...

20

sinon, y'a peut-être moyen de faire plus simple (sans getkey) en passant par les string wink
«Les gens exigent la liberté d’expression pour compenser la liberté de pensée qu’ils préfèrent éviter.» - Sören Kierkegaard

La République, c’est comme la syphilis : quand on l’a attrapée, soit on se fait sauter le caisson, soit on essaie de vivre avec.

21

Qu'est-ce que tu veux dire ? je vois pas comment on peut faire avec des strings... confus
Louis, préférer la force de l'argument à l'argument de la force...

22

t'enregistre toutes les décimale en une fois dans un string (pas besoin de Getkey). ensuite, tu ressort les nombre au fur et à mesur de ton string. (ou directment dans une seconde liste, pusi il te reste plsu qu'a comparer les deux listes)
«Les gens exigent la liberté d’expression pour compenser la liberté de pensée qu’ils préfèrent éviter.» - Sören Kierkegaard

La République, c’est comme la syphilis : quand on l’a attrapée, soit on se fait sauter le caisson, soit on essaie de vivre avec.

23

d'accord...

mais en fait, J4AI UN BIG PB !! j'ai prêté ma calto à un mec en cours et, soi-disant sans faire exprès, il a effacé toute la mémoire RAM (ou ROM, enfin celle où il y a pas les programmes FLASH). Résultat : j'ai perdu PITRAIN et tout le reste... sad rage

je croyais avoir vu un programme qui permettait de retrouver les programmes qu'on avait supprimé, mais je le retrouve pas dans les archives de TI online... pourrais-tu m'aider ?
Louis, préférer la force de l'argument à l'argument de la force...

24

mdr, tu me recopira sa: "toujours sauvegarder" grin
En plus, toi sous 84+, tu doit pouvoir stoker les programmes en mémoir d'archives ( fait de termps ent emsp une copie que tu laisse en archive wink )
Sinon, pour t'aider, si sa existe, sa devrait se trouver sur www.ticalc.org (comme à peu près tout ), maéis je usis pas sur que sa exite du tout. (enfin, je conait aps trop les prgm asm pour 83+/84+)
«Les gens exigent la liberté d’expression pour compenser la liberté de pensée qu’ils préfèrent éviter.» - Sören Kierkegaard

La République, c’est comme la syphilis : quand on l’a attrapée, soit on se fait sauter le caisson, soit on essaie de vivre avec.

25

je sais comment archiver les progs, mais pas comment les copier... tu peux m'expliquer ?
Louis, préférer la force de l'argument à l'argument de la force...

26

Hum, effectivement, copier n'est pas (malheureeusement) supporté directement dans la gestion des vars..
Mais y'a quand même une astuce happy
Tu créer un nouveau programme, ( nouveau nom), une fois dans l'édietru du programme, tu fait Rcl ([2nd]+[sto] ), puis t'appuis sur PRGM, puis deux fgois à droite, pusi selectionne ton rpogramme (celui que tu veut copier). Et voila, sa te fera un beau copier-coller smile
( cependant, j'avou que quand je t'ai dit sa, j'ai oublié que ce n'était pas dans les fonctions de base, comme sa l'est sur 68k )
«Les gens exigent la liberté d’expression pour compenser la liberté de pensée qu’ils préfèrent éviter.» - Sören Kierkegaard

La République, c’est comme la syphilis : quand on l’a attrapée, soit on se fait sauter le caisson, soit on essaie de vivre avec.

27

d'accord
Louis, préférer la force de l'argument à l'argument de la force...