Poster un nouveau sujet Poster une réponse
Calcul mental (TI 82 stats et 83)
Auteur Message
mystery_enigma



Autorisation : Membre
Nb de messages : 16
Inscrit le : Sam 04 Fév 2012, 23:16
Posté le : Sam 14 Avr 2012, 20:16   Citer 

Petit jeu de calcul mental conçu en basic sur une TI 82 stats(fr) (marche bien sûr pour TI 82 et 83 regular) avec 30 niveaux de difficulté croissante, 3 vitesses d'exécutions différentes selon le niveau atteint et un système de sauvegarde du nom des vainqueurs.
Voici l'adresse de téléchargement : http://www.ti-bank.fr/index.php?mod=archives&ac=voir&id=10000256
Et voici le code :

Code
:If Θmin≠int(Θmin
:Then
:   0→Θmin
:   "→Str0
:End
:ClrHome
:Lbl Z
:Menu("  CALCUL MENTAL ","    JOUER",A,"  VAINQUEURS",B,"   QUITTER",C
:Lbl A
:1→H
:DelVar Q0→L
:DelVar Z0→N
:ClrHome
:Output(1,1,"TON PSEUDO STPL =)
:Disp "","
:Input Str1
:ClrHome
:Output(3,1,"OK "+Str1
:Output(4,1,"C'EST QUAND TU  VEUX !
:Pause
:Repeat N=30
:   DelVar Q0→H
:   ClrHome
:   (N>9)randInt(11,19→J
:   (N>19)randInt(11,20→M
:   (N<10)randInt(2,9&#8594;B
:   (N<20)randInt(2,9&#8594;C
:   (B+J)*(C+M&#8594;D
:   100int(D/100&#8594;L
:   10int(D/10&#8594;F
:   If F>99:F-L&#8594;F
:   D-10int(D/10&#8594;G
:   74((L=900)+(F=90)+(G=9))+73((L=800)+(F=80)+(G=8))+72((L=700)+(F=70)+(G=7))+84((L=600)+(F=60)+(G=6))+83((L=500)+(F=50)+(G=5))+82((L=400)+(F=40)+(G=4))+94((L=300)+(F=30)+(G=3))+93((L=200)+(F=20)+(G=2))+92((L=100)+(F=10)+(G=1))+102((G=0)+((L>F)(F=0&#8594;H
:   Output(1,1,"LEVEL
:   Output(1,8,N+1
:   Output(7,1,"IL TE RESTE  s
:   If B+J>9
:      Output(4,1,B+J
:   If B+J<10
:      Output(4,2,B
:   Output(4,3,"*
:   Output(4,4,C+M
:   Output(4,6,"=
:   For(I,1,4
:      Disp "
:   End
:   For(I,200-50(N>4)-30(N>14),1,&#8254;1
:      Output(7,13,int(I/40
:      getKey&#8594;K
:      K+Q&#8594;Q
:   End
:   ClrHome
:   If Q=H
:   Then
:      1+N&#8594;N
:      For(I,1,80
:         Output(4,4,"LEVEL UP !
:      End
:      ClrHome
:      If N=5
:      Then
:         Output(4,3,"PLUS VITE !
:         For(I,1,300
:         End
:      End
:      If N=10
:      Then
:         Disp "BIEN, ON VA","POUVOIR PASSER","AUX CHOSES ","SERIEUSES =}
:         For(I,1,500
:         End
:      End
:      If N=15
:      Then
:         Output(1,1,"AUGMENTER
:         Output(2,1,"VITESSE ?
:         For(I,1,800)
:         End
:         ClrHome
:         Output(3,1,"TU PENSAIS
:         Output(4,1,"VRAIMENT AVOIR"
:         Output(5,1,"LE CHOIX  x1
:         Output(5,12,"D
:         For(I,1,500
:         End
:      End
:      If N=20
:      Then
:         Disp "IMPRESSIONANT !","MAIS SERAS TU","CAPABLE D'ALLER","JUSQU'AU BOUT ?
:         For(I,1,500
:         End
:      End
:      ClrHome
:   Else
:      Goto &#920;
:   End
:End
:Lbl &#920;
:Output(3,1,Str1
:If N=30
:Then
:   Output(2,1,"FELICITATION
:   Output(4,1,"TU AS GAGNE !
:   Output(5,1,"TON NOM ENTRERA
:   Output(6,1,"DANS LA LEGENDE!
:   Pause :ClrHome
:   Output(2,1,"ENFIN DANS LA
:   Output(3,1,"RUBRIQUE DEDIEE
:   Output(4,1,"AU VAINQUEURS
:   Output(5,1,"POUR L'INSTANT..
:   "("+Str1+")"+Str0&#8594;Str0
:   1+&#920;min&#8594;&#920;min
:Else
:   Output(2,1,"DESOLE
:   Output(4,1,"TU  AS PERDU...
:   Output(5,1,"TON SCORE EST DE
:   Output(6,8,N
:End
:Pause
:ClrHome
:Goto Z
:Lbl B
:If &#920;min>0
:Then
:   length(Str0&#8594;L
:   &#920;min&#8594;I
:   For(I,1,&#920;min
:      inString(Str0,"("&#8594;N
:      inString(Str0,")"&#8594;M
:      sub(Str0,N+1,M-1-N&#8594;Str8
:      Disp Str8
:      If I/7=int(I/7:Pause
:      sub(Str0,M+1,L-M)+"("+Str8+")&#8594;Str0
:   End
:Else
:   Output(4,7,"VIDE
:End
:Pause
:ClrHome
:Goto Z
:Lbl C
:ClrHome
:Disp "BY MOMOTHEFIRST","       &#8804;)



Bien évidemment, vos remarques seront les bienvenues happy.gif

Désolé pour l'apparence de mon code sur le topic; le plus simple serait de télécharger le fichier au format .83 et de l'ouvrir avec TI-editor (ou autre éditeur de programme TI 83) car j'ai l'impression que les subtilités de mon code n'ont pas été appréciées lorsque je l'ai posté ...https://tout82.pages-perso.free.fr/forum/images/smileys/goutte.gif

 Adresse email Haut de page Bas de page 
 
sandro



Autorisation : Membre
Nb de messages : 1366
Inscrit le : Ven 25 Mar 2011, 22:58
Posté le : Sam 14 Avr 2012, 20:49   Citer 

désolé, je n'arrive pas à ouvrir ton lien (mon navigateur depuis quelques mois ne m'ouvre plus les pages de TI-Bank). Donc si tu veut que je puisse t'aider (et faire proffiter de ton programme au plus grand monde), ce serait bien que tu remplace les carractères spéciaux qui ne passent pas.

Sandro

----------------------
mort à l'inutile, place à la mémoire libre et aux programmes
 Adresse email Haut de page Bas de page 
 
The K



Autorisation : Membre
Nb de messages : 850
Inscrit le : Sam 15 Oct 2011, 11:07
Posté le : Sam 14 Avr 2012, 21:24   Citer 

Y aurait-il moyen d'avoir une traduction en français en plus de la suppression des caractères spéciaux ? Merci winkle.gif

(moi ça me gène pas ... mais ça pourrait en embêter d'autres !)

----------------------
La la la ...

Avez-vous pensé à regarder le manuel avant de demander conseil ? Un manuel est fait avant tout pour être consulté : MANUEL

Vous avez un problème avec l'ordinateur avec votre calculatrice ? SOLUTION EN VIDEO

Mes programmes sur le site : Produit scalaire KMorpion Puissance 4 Mastermind

Mes nouveaux programmes de calcul formel : FCarré FPrime

Projet base de données : ici mais abandonné. Trop de travail ...
 Adresse email Haut de page Bas de page 
 
Persalteas



Autorisation : Membre
Nb de messages : 2086
Inscrit le : Sam 23 Jan 2010, 20:09
Posté le : Sam 14 Avr 2012, 21:33   Citer 

C'est le problème des programmes recopiés avec TI Editor.

Je te conseille de le recopier à la main si tu veux que les gens du forum le recopient et le commentent. (et en français si possible)


Merci d'avance, et désolé pour le forum qui n'accepte pas les caractères spéciaux...

 Adresse email Haut de page Bas de page 
 
tapenad



Autorisation : Membre
Nb de messages : 197
Inscrit le : Jeu 17 Nov 2011, 13:20
Posté le : Dim 15 Avr 2012, 0:25   Citer 

mais si la question est par exemple 2342,232+6754,356 ( de tête environ 9096,588) il suffit de taper (aïe) le même calcul non?

----------------------
L’erreur est humaine, mais pour provoquer une vraie catastrophe, il faut un ordinateur.

je suis premier!!!

je m'aime.
 Adresse email Haut de page Bas de page 
 
linkakro



Autorisation : Membre
Nb de messages : 3738
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Dim 15 Avr 2012, 0:58   Citer 

Voir ce sujet : https://tout82.pages-perso.free.fr/forum/sujet.php?sujet=1947
J'y ai écrit un test de détection de calcul.

----------------------
ti82statfr: 2008, inscrit: 2009, ti84pocketfr: noël2011, ti30xbmultiview: iut 2012-2014
Perfectionniste, manque tact. Pas le temps de tout publier depuis 2011. Répond toujours aux questions. (rédigé juin 2014)

Pour tout le monde et surtout les débutants, quelques-uns des articles courants :
*Traductions Algorithmie/Ti-Basic.
*Caractères spéciaux sur Tout82
Les défauts du TI-Basic : Goto_versus_algo et DelVar/End/Lbl/guillemet/store
 Adresse email Haut de page Bas de page 
 
mystery_enigma



Autorisation : Membre
Nb de messages : 16
Inscrit le : Sam 04 Fév 2012, 23:16
Posté le : Dim 15 Avr 2012, 10:59   Citer 


Code
:If ([thêta)min](différent de)ent([(thêta)min]
:Then
:   0->[(thêta)min]
:   "->chaîne0
:End
:EffEcr
:Lbl Z
:Menu("  CALCUL MENTAL ","    JOUER",A,"  VAINQUEURS",B,"   QUITTER",C
:Lbl A
:1->H
:EffVar Q0->L
:EffVar Z0->N
:EffEcr
:Output(1,1,"TON PSEUDO STPL =)
:Disp "","
:Input chaîne1
:EffEcr
:Output(3,1,"OK "+chaîne1
:Output(4,1,"C'EST QUAND TU  VEUX !
:Pause
:Repeat N=30
:   Effvar Q0->H
:   EffEcr
:   (N>9)entAléat(11,19->J
:   (N>19)entAléat(11,20->M
:   (N<10)entAléat(2,9->B
:   (N<20)entAléat(2,9->C
:   (B+J)*(C+M->D
:   100ent(D/100->L
:   10ent(D/10->F
:   If F>99:F-L->F
:   D-10ent(D/10->G
:   74((L=900)+(F=90)+(G=9))+73((L=800)+(F=80)+(G = 8))+72((L=700)+(F=70)+(G=7))+84((L=600)+(F=60)+(G=6))+83((L=500)+(F=50)+(G=5))+82((L=400)+(F=40)+(G=4))+94((L=300)+(F=30)+(G=3))+93((L=200)+(F=20)+(G=2))+92((L=100)+(F=10)+(G=1))+102((G=0)+((L>F)(F=0->H
:   Output(1,1,"LEVEL
:   Output(1,8,N+1
:   Output(7,1,"IL TE RESTE  s
:   If B+J>9
:      Output(4,1,B+J
:   If B+J<10
:      Output(4,2,B
:   Output(4,3,"*
:   Output(4,4,C+M
:   Output(4,6,"=
:   For(I,1,4
:      Disp "
:   End
:   For(I,200-50(N>4)-30(N>14),1,-1
:      Output(7,13,ent(I/40
:      codeTouche->K
:      K+Q->Q
:   End
:   EffEcr
:   If Q=H
:   Then
:      1+N->N
:      For(I,1,80
:         Output(4,4,"LEVEL UP !
:      End
:      EffEcr
:      If N=5
:      Then
:         Output(4,3,"PLUS VITE !
:         For(I,1,300
:         End
:      End
:      If N=10
:      Then
:         Disp "BIEN, ON VA","POUVOIR PASSER","AUX CHOSES ","SERIEUSES =}
:         For(I,1,500
:         End
:      End
:      If N=15
:      Then
:         Output(1,1,"AUGMENTER
:         Output(2,1,"VITESSE ?
:         For(I,1,800)
:         End
:         EffEcr
:         Output(3,1,"TU PENSAIS
:         Output(4,1,"VRAIMENT AVOIR"
:         Output(5,1,"LE CHOIX  x1
:         Output(5,12,"D
:         For(I,1,500
:         End
:      End
:      If N=20
:      Then
:         Disp "IMPRESSIONANT !","MAIS SERAS TU","CAPABLE D'ALLER","JUSQU'AU BOUT ?
:         For(I,1,500
:         End
:      End
:      EffEcr
:   Else
:      Goto (thêta)
:   End
:End
:Lbl (thêta)
:Output(3,1,chaîne1
:If N=30
:Then
:   Output(2,1,"FELICITATION
:   Output(4,1,"TU AS GAGNE !
:   Output(5,1,"TON NOM ENTRERA
:   Output(6,1,"DANS LA LEGENDE!
:   Pause :EffEcr
:   Output(2,1,"ENFIN DANS LA
:   Output(3,1,"RUBRIQUE DEDIEE
:   Output(4,1,"AU VAINQUEURS
:   Output(5,1,"POUR L'INSTANT..
:   "("+chaîne1+")"+chaîne0->chaîne0
:   1+[(thêta)min]->[(thêta)min]
:Else
:   Output(2,1,"DESOLE
:   Output(4,1,"TU  AS PERDU...
:   Output(5,1,"TON SCORE EST DE
:   Output(6,8,N
:End
:Pause
:EffEcr
:Goto Z
:Lbl B
:If [(thêta)min]>0
:Then
:   longueur(chaîne0->L
:   [(thêta)min]->I
:   For(I,1,(thêta)min
:      carChaîne(chaîne0,"("->N
:      carChaîne(chaîne0,")"->M
:      sous-Chaîne(chaîne0,N+1,M-1-N->chaîne8
:      Disp chaîne8
:      If I/7=ent(I/7:Pause
:      sous-Chaîne(chaîne0,M+1,L-M)+"("+chaîne8+")->chaîne0
:   End
:Else
:   Output(4,7,"VIDE
:End
:Pause
:EffEcr
:Goto Z
:Lbl C
:EffEcr
:Disp "BY MOMOTHEFIRST","       =)


Je crois qu'avec ça j'ai à la fois arranger (comme je le pouvais) les caractères spéciaux et fait le bonheur des puristes francophones laugh.gif

 Adresse email Haut de page Bas de page 
 
mystery_enigma



Autorisation : Membre
Nb de messages : 16
Inscrit le : Sam 04 Fév 2012, 23:16
Posté le : Dim 15 Avr 2012, 17:08   Citer 


Citer : tapenad
mais si la question est par exemple 2342,232+6754,356 ( de tête environ 9096,588) il suffit de taper (aïe) le même calcul non?


Eh bien justement ce jeu a été conçu de façon à ce que le résultat soit écrit en toute lettre (ou chiffre dans ce cas minied.gif ), à la touche près.
Cependant, il possède un défaut et pas des moindres... il ne prend pas en compte l'ordre des touches pressées. Ainsi 81 sera égal à 18, de même pour 36 et 63, etc...
De plus, mon jeu n'affiche pas le nombre qu'entre l'utilisateur pour des soucis de rapidité d’exécution. En effet, si vous prêtez attention à la boucle principale du code qui permet de récupérer la valeur des touches pressées par l'utilisateur(celle où il y a le "codeTouche"), vous remarquerez qu'elle est très brève car elle a pour but de limiter à mon souhait le temps dont dispose l'utilisateur pour répondre (je sais, je suis un peu sadique godgrace.gif ) et ajouter trop d'instructions à cette boucle pourrait compromettre cette aspect, du moins avec l’algorithme que j'ai mis en place. Mais bien sûr, si vous avez des propositions à me faire pour l'améliorer sur ces derniers points ou d'autres que je n'aurais pas pris en compte n'hésitez pas, j'ai posté mon code pour ça.

 Adresse email Haut de page Bas de page 
 
Persalteas



Autorisation : Membre
Nb de messages : 2086
Inscrit le : Sam 23 Jan 2010, 20:09
Posté le : Dim 15 Avr 2012, 21:33   Citer 

C'est plutôt une bonne idée. Moi je trouve ça sympa, et on ne peut pas tricher:

pour écrire 36 il faut déjà avoir trouvé la réponse 63.

Et merci pour la traduction ! glasses.gif

 Adresse email Haut de page Bas de page 
 
mystery_enigma



Autorisation : Membre
Nb de messages : 16
Inscrit le : Sam 04 Fév 2012, 23:16
Posté le : Lun 16 Avr 2012, 12:17   Citer 


Citer : persalteas

pour écrire 36 il faut déjà avoir trouvé la réponse 63.


C'est vrai; et de toute façon la probabilité que le joueur trouve le résultat avec les chiffres inversés sans avoir calculé mentalement (en gros au pif) est vraiment très faible.


Citer : persalteas
Et merci pour la traduction ! glasses.gif


De rien glasses.gif, mais je viens de me rendre compte que la traduction des fonctions Anglaises/Françaises est imposée par le forum, donc je tiens à présenter mes excuses auprès des modérateurs pour cette erreur.


Citer : persalteas
C'est plutôt une bonne idée. Moi je trouve ça sympa, et on ne peut pas tricher


Tu l'as essayé ? Si c'est le cas pourrais tu me donner ton meilleur score, histoire que je sache si il est possible de gagner car je n'ai pas pu faire mieux que 21 goutte.gif

 Adresse email Haut de page Bas de page 
 
Sangohan38



Autorisation : Membre
Nb de messages : 3293
Inscrit le : Sam 31 Déc 2005, 19:48
Posté le : Lun 16 Avr 2012, 12:59   Citer 

La traduction n'est pas du tout imposée, faut pas abuser. Et sinon ça voudrait dire que je vais devoir réfléchir en français.. brrr l'horreur.

Bon sinon, on peut p'têtre simplifier tout sa:


Code
100ent(D/100->L
:   10ent(D/10->F



Devient:


Code
100ent(.01D->L
10ent(.1D->F



On a aussi:


Code
74((L=900)+(F=90)+(G=9))+73((L=800)+(F=80)+(G = 8))+72((L=700)+(F=70)+(G=7))+84((L=600)+(F=60)+(G=6))+83((L=500)+(F=50)+(G=5))+82((L=400)+(F=40)+(G=4))+94((L=300)+(F=30)+(G=3))+93((L=200)+(F=20)+(G=2))+92((L=100)+(F=10)+(G=1))+102((G=0)+((L>F)(F=0->H



Qui peut devenir:


Code
300-10partent(L/300)+(partdec(L/300)[différent de]0)+1+3partdec((L+100)/300)-10partent(.3F)+(partdec(F/30)[différent de]0)+1+3partdec((F+10)/30)-10partent(G/3)+(partdec(G/3)[différent de]0)+1+3partdec((G+1)/3)+(G=0)+((L>F)(F=0->H



J'espère ne pas avoir fait de coquille sur ce dernier mais normalement ça fonctionne.

Sangohan38

 Adresse email Haut de page Bas de page 
 
mystery_enigma



Autorisation : Membre
Nb de messages : 16
Inscrit le : Sam 04 Fév 2012, 23:16
Posté le : Lun 16 Avr 2012, 16:42   Citer 

Merci Sangohan38 pour ce petit ajustement qui m'a échappé :

Citer : Sangohan38

Code
:100ent(D/100->L
:   10ent(D/10->F





Devient:



Code
100ent(.01D->L
10ent(.1D->F




Par contre, j'aimerais bien que tu détailles la seconde optimisation que tu as apporté à mon code car j'ai l'impression que tu as dû faire une "coquille" comme tu dis. Je ne te dis pas la surprise quand j'ai testé mon code avec ce changement et que je me suis rendu compte qu'il me serait impossible de dépasser le niveau 1...


Citer : Sangohan38
La traduction n'est pas du tout imposée, faut pas abuser.


C'est vrai, c'est juste qu'il y a un sujet "Traduction des fonctions Anglaises/Françaises" et du coup j'ai généralisé ça à tout le site laugh.gif


Citer : Sangohan38
Et sinon sa voudrait dire que je vais devoir réfléchir en français.. brrr l'horreur.


Bah...vu la qualité de ton français, c'est vrai que c'est une chance pour toi!
D'ailleurs je trouve ça un peu étonnant pour un modérateur...

 Adresse email Haut de page Bas de page 
 
Sangohan38



Autorisation : Membre
Nb de messages : 3293
Inscrit le : Sam 31 Déc 2005, 19:48
Posté le : Lun 16 Avr 2012, 20:10   Citer 

On prend vraiment n'importe qui comme modérateur tu sait. D'ailleurs je ne vois qu'une seule faute dans la phrase citée précédemment.

Mon code utilise les parties entières et décimales pour obtenir les facteurs de tes conditions (74, 73 etc) mais il buggait car j'avais oublié de préciser que L,G et G pouvais être nul.

Du coup j'obtient l'expression suivante:

Code
92-10iPart((L-100)/300)+3fPart((L-100)/300))(L[différent de]0)+(F[différent de]0)(92-10iPart((F-10)/30)+3fPart((F-10)/30))+(G[différent de]0(92-10iPart((G-1))/3)+3fPart((G-1)/3))+102(G=0)+((F<L)not(F



Sangohan38

 Adresse email Haut de page Bas de page 
 
mystery_enigma



Autorisation : Membre
Nb de messages : 16
Inscrit le : Sam 04 Fév 2012, 23:16
Posté le : Mar 17 Avr 2012, 18:25   Citer 

Je suis vraiment désolé Sangohan mais ton code ne marche toujours pas (même après de petites rectifications au niveau des parenthèses):

Citer
92-10iPart((L-100)/300)+3fPart((L-100)/300) (L[différent de]0)+(F[différent de]0)(92-10iPart((F-10)/30)+3fPart((F-10)/30))+(G[différent de]0 ) (92-10iPart((G-1))/3)+3fPart((G-1)/3))+102(G=0)+((F<L)not(F


(J'ai préféré cité pour pouvoir souligner les modifications que j'aie apportés au code)

Es-tu sûr qu'il est possible de retrouver absolument tous les facteurs de conditions du code précédent avec ta méthode ? L'as tu testée ? Je tiens quand même à te remercier pour l’intérêt que tu as montré jusqu'à lors pour mon modeste programme.


Citer : Sangohan38
On prend vraiment n'importe qui comme modérateur tu sait. D'ailleurs je ne vois qu'une seule faute dans la phrase citée précédemment.


Oui et je vois que tu l'as corrigé. Tu es allé jusqu'à corrigé la faute identique à la fin de ton poste mais quel dommage que tu aies oublié celle-ci :

Citer : Sangohan38
Bon sinon, on peut p'têtre simplifier tout sa:


Sans compter les fautes de conjugaison qui se sont glissées dans ton dernier poste...

 Adresse email Haut de page Bas de page 
 
Sangohan38



Autorisation : Membre
Nb de messages : 3293
Inscrit le : Sam 31 Déc 2005, 19:48
Posté le : Mar 17 Avr 2012, 21:36   Citer 

Oui, j'ai remarqué ça après ta remarque. Pour le dernier post, je n'en vois pas.

Et j'ai testé sur ma calculatrice et cela fonctionnait sans problèmes.
Sur mon code, j'ai fait des erreurs sur les parenthèses alors je recommence encore et cette fois j'espère ne pas me tromper:


Code
(L[différent de 0)(92-10iPart((L-100)/300)+3fPart((L-100)/300))+(F[différent de]0)(92-10iPart((F-10)/30)+3fPart((F-10)/30))+(G[différent de]0)(92-10iPart((G-1)/3)+3fPart((G-1)/3))+102(G=0)+((F<L)not(F



Sangohan38

PS: Et être modérateur, comme le titre l'indique c'est surtout tenir le forum propre des floods et du langage vraiment illisible.

 Adresse email Haut de page Bas de page 
 
mystery_enigma



Autorisation : Membre
Nb de messages : 16
Inscrit le : Sam 04 Fév 2012, 23:16
Posté le : Mar 17 Avr 2012, 23:51   Citer 

Alors là oui, on peut dire que ton optimisation (113 octets de moins quand même !) est parfaite.
J'y ai ajouté la possibilité d'annuler le nombre saisi avec un petit K(différent de)45 (c'est d'ailleurs un peu idiot de ma part d'avoir oublié ce détail minied.gif )
Je vais remettre le code en entier histoire de voir ce que ça donne :

Code
If ([thêta)min](différent de)ent([(thêta)min]
:Then
:   0->[(thêta)min]
:   "->chaîne0
:End
:EffEcr
:Lbl Z
:Menu("  CALCUL MENTAL ","    JOUER",A,"  VAINQUEURS",B,"   QUITTER",C
:Lbl A
:1->H
:EffVar Q0->L
:EffVar Z0->N
:EffEcr
:Output(1,1,"TON PSEUDO STPL =)
:Disp "","
:Input chaîne1
:EffEcr
:Output(3,1,"OK "+chaîne1
:Output(4,1,"C'EST QUAND TU  VEUX !
:Pause
:Repeat N=30
:   Effvar Q0->H
:   EffEcr
:   (N>9)entAléat(11,19->J
:   (N>19)entAléat(11,20->M
:   (N<10)entAléat(2,9->B
:   (N<20)entAléat(2,9->C
:   (B+J)*(C+M->D
:   100ent(0.01D->L
:   10ent(0.1D->F
:   If F>99:F-L->F
:   D-10ent(0.1D->G
:   (L[différent de 0)(92-10ent((L-100)/300)+3partDéc((L-100)/300))+(F[différent de]0)(92-10ent((F-10)/30)+3partDéc((F-10)/30))+(G[différent de]0)(92-10ent((G-1)/3)+3partDéc((G-1)/3))+102(G=0)+((F<L)not(F
:   Output(1,1,"LEVEL
:   Output(1,8,N+1
:   Output(7,1,"IL TE RESTE  s
:   If B+J>9
:      Output(4,1,J
:   If B+J<10
:      Output(4,2,B
:   Output(4,3,"*
:   Output(4,4,C+M
:   Output(4,6,"=
:   For(I,1,4
:      Disp "
:   End
:   For(I,200-50(N>4)-30(N>14),1,-1
:      Output(7,13,ent(I/40
:      codeTouche->K
:      (K+Q)(K(différent de)45->Q      \\
:   End
:   EffEcr
:   If Q=H
:   Then
:      1+N->N
:      For(I,1,80
:         Output(4,4,"LEVEL UP !
:      End
:      EffEcr
:      If N=5
:      Then
:         Output(4,3,"PLUS VITE !
:         For(I,1,300
:         End
:      End
:      If N=10
:      Then
:         Disp "BIEN, ON VA","POUVOIR PASSER","AUX CHOSES ","SERIEUSES =}
:         For(I,1,500
:         End
:      End
:      If N=15
:      Then
:         Output(1,1,"AUGMENTER
:         Output(2,1,"VITESSE ?
:         For(I,1,800)
:         End
:         EffEcr
:         Output(3,1,"TU PENSAIS
:         Output(4,1,"VRAIMENT AVOIR"
:         Output(5,1,"LE CHOIX  x1
:         Output(5,12,"D
:         For(I,1,500
:         End
:      End
:      If N=20
:      Then
:         Disp "IMPRESSIONANT !","MAIS SERAS TU","CAPABLE D'ALLER","JUSQU'AU BOUT ?
:         For(I,1,500
:         End
:      End
:      EffEcr
:   Else
:      Goto (thêta)
:   End
:End
:Lbl (thêta)
:Output(3,1,chaîne1
:If N=30
:Then
:   Output(2,1,"FELICITATION
:   Output(4,1,"TU AS GAGNE !
:   Output(5,1,"TON NOM ENTRERA
:   Output(6,1,"DANS LA LEGENDE!
:   Pause :EffEcr
:   Output(2,1,"ENFIN DANS LA
:   Output(3,1,"RUBRIQUE DEDIEE
:   Output(4,1,"AU VAINQUEURS
:   Output(5,1,"POUR L'INSTANT..
:   "("+chaîne1+")"+chaîne0->chaîne0
:   1+[(thêta)min]->[(thêta)min]
:Else
:   Output(2,1,"DESOLE
:   Output(4,1,"TU  AS PERDU...
:   Output(5,1,"TON SCORE EST DE
:   Output(6,8,N
:End
:Pause
:EffEcr
:Goto Z
:Lbl B
:If [(thêta)min]>0
:Then
:   longueur(chaîne0->L
:   [(thêta)min]->I
:   For(I,1,[(thêta)min]
:      carChaîne(chaîne0,"("->N
:      carChaîne(chaîne0,")"->M
:      sous-Chaîne(chaîne0,N+1,M-1-N->chaîne8
:      Disp chaîne8
:      If I/7=ent(I/7:Pause
:      sous-Chaîne(chaîne0,M+1,L-M)+"("+chaîne8+")->chaîne0
:   End
:Else
:   Output(4,7,"VIDE
:End
:Pause
:EffEcr
:Goto Z
:Lbl C
:EffEcr
:Disp "BY MOMOTHEFIRST","       =)


Je rappelle quand même les principaux défauts de ce code:
- Ne gère pas l'ordre des touches pressées
- N'affiche pas les nombres lorsqu'ils sont saisis


Citer : Sangohan38
Pour le dernier post, je n'en vois pas.
[...]
PS: Et être modérateur, comme le titre l'indique c'est surtout tenir le forum propre des floods et du langage vraiment illisible.Texte cité


Tu as tout à fait raison mais je pense tout de même que ce n'est pas une raison pour égratigner de la sorte la belle langue de Molière : (extraits de ton antépénultième post)

Citer
On prend vraiment n'importe qui comme modérateur tu sait \\ Aïe !
[...]
L,G et G pouvais être nul. // cry.gif
[...]
j'obtient l'expression suivante: // le coup de grâce... frozen.gif



PS : J’espère quand même que tu auras compris que je te taquine un peu. Mais bon essaie quand même de faire des efforts histoire que l'on puisse dire que ta maîtrise du français est aussi excellente que ton niveau en programmation happy.gif ( en plus, d'après ce que j'ai vu de ton dernier post tu es sur la bonne voie)!

 Adresse email Haut de page Bas de page 
 
Sangohan38



Autorisation : Membre
Nb de messages : 3293
Inscrit le : Sam 31 Déc 2005, 19:48
Posté le : Mer 18 Avr 2012, 1:02   Citer 

A la vue de ce nouveau code, je vois d'autres optimisations possibles permettant notamment de virer des Then/Else/End qui ralentissent le programme.


Code
If ([thêta)min](différent de)ent([(thêta)min]
:Then
:   0->[(thêta)min]
:   "->chaîne0
:End
:EffEcr
:Lbl Z
:Menu("  CALCUL MENTAL ","    JOUER",A,"  VAINQUEURS",B,"   QUITTER",C
:Lbl A
:1->H
:EffVar Q Effvar L Effvar N EffVar Z
:Input "TON PSEUDO STPL:",chaîne1
:EffEcr
:Output(3,1,"OK "+chaîne1
:Output(4,1,"C'EST QUAND TU  VEUX !
:Pause
:Repeat N=30
:   Effvar Q Effvar H
:   EffEcr
:   (N>9)entAléat(11,19->J
:   (N>19)entAléat(11,20->M
:   (N[inférieur ou égal à]9)entAléat(2,9->B
:   (N<20)entAléat(2,9->C
:   (B+J)*(C+M->D
:   E2ent(0.01D->L                         << C'est le E de la puissance de 10 >>
:   10ent(0.1D->F
:   If F>99:F-L->F
:   D-10ent(0.1D->G
:   (L[différent de 0)(92-10ent((L-100)/300)+3partDéc((L-100)/300))+(F[différent de]0)(92-10ent((F-10)/30)+3partDéc((F-10)/30))+(G[différent de]0)(92-10ent((G-1)/3)+3partDéc((G-1)/3))+102(G=0)+((F<L)not(F
:   Output(1,1,"LEVEL
:   Output(1,8,N+1
:   Output(7,1,"IL TE RESTE  s
:   If B+J>9
:      Output(4,1,J
:   If B+J[inférieur ou égal à]9
:      Output(4,2,B
:   Output(4,3,"*
:   Output(4,4,C+M
:   Output(4,6,"=
:   For(I,1,4
:      Disp "
:   End
:   For(I,200-50(N>4)-30(N>14),1,-1
:      Output(7,13,ent(I/40
:      codeTouche->K
:      (K+Q)(K(différent de)45->Q
:   End
:   EffEcr
:   If Q[différent de H
:   Goto (théta)
:   1+N->N
:   For(I,1,80
:      Output(4,4,"LEVEL UP !
:   End
:   EffEcr
:   For(I,1,800
:      If N[différent de]15
:         800->I
:      If N=15
:         Disp "AUGMENTER","VITESSE ?         << Le Disp est remplaçable par un Output si jamais il y a un disp avant dans le code >>
:   End     
:   For(I,1,300(N=5)+500(1<partEnt(N/5
:      If N=5
:         Output(4,3,"PLUS VITE !
:      If N=10
:         Disp "BIEN, ON VA","POUVOIR PASSER","AUX CHOSES","SERIEUSES =}
:      If N=15
:         Disp "TU PENSAIS","VRAIMENT AVOIR,"LE CHOIX xD
:      If N=20
:         Disp "IMPRESSIONANT !","MAIS SERAS-TU","CAPABLE D'ALLER","JUSQU'AU BOUT ?
:   End
:End
:EffEcr
:Lbl (thêta)
:Output(3,1,chaîne1
:Disp "","DESOLE","","TU AS PERDU...","TON SCORE EST DE"
:Output(6,8,N
:If N=30
:Then
:   Disp "","","","FELICITATION","","TU AS GAGNE !","","TON NOM ENTRERA","DANS LA LEGENDE!
:   Pause
:   EffEcr
:   Disp "","ENFIN DANS LA","RUBRIQUE DEDIEE","AU VAINQUEURS","POUR L'INSTANT...         << Tu as fait une faute d'orthographe! >>
:   "("+chaîne1+")"+chaîne0->chaîne0
:   1+[(thêta)min]->[(thêta)min]
:End
:Pause
:EffEcr
:Goto Z
:Lbl B
:If [(thêta)min]>0
:Then
:   longueur(chaîne0->L
:   [(thêta)min]->I
:   For(I,1,[(thêta)min]
:      carChaîne(chaîne0,"("->N
:      carChaîne(chaîne0,")"->M
:      sous-Chaîne(chaîne0,N+1,M-1-N->chaîne8
:      Disp chaîne8
:      If I/7=ent(I/7:Pause
:      sous-Chaîne(chaîne0,M+1,L-M)+"("+chaîne8+")->chaîne0
:   End
:Else
:   Output(4,7,"VIDE
:End
:Pause
:EffEcr
:Goto Z
:Lbl C
:EffEcr
:Disp "BY MOMOTHEFIRST","       =)



Et ne t'en fais pas, je fais beaucoup d'efforts et j'accepte volontier la critique quand la personne est irréprochable (oui j'accepte mal qu'une personne faisant des erreurs d'orthographe qui changent la sonorité d'un mot me fasse des remarques).

Sangohan38

PS: Il n'y a pas que Molière qui à écrit un français littéraire, il y a toute la pléthore de poètes et écrivains français.

 Adresse email Haut de page Bas de page 
 
sandro



Autorisation : Membre
Nb de messages : 1366
Inscrit le : Ven 25 Mar 2011, 22:58
Posté le : Mer 18 Avr 2012, 10:46   Citer 


Code
If ([thêta)min](différent de)ent([(thêta)min]


peut devenir
Code
If fPart([thétamin]




Code
:EffVar Q Effvar L Effvar N EffVar Z
:Input "TON PSEUDO STPL:",chaîne1

peut devenir
Code
:EffVar Q Effvar L Effvar N EffVar ZInput "TON PSEUDO STPL:",chaîne1




Code
:   Effvar Q Effvar H
:   EffEcr

peut devenir
Code
:   Effvar Q Effvar HEffEcr




Code
D-10ent(0.1D->G

peut je crois être transformé(car D est un entier positif) en
Code
10fPart(.1D->G




Code
:   If Q[différent de H

devient
Code
:   If Q-H




Code
:      If N[différent de]15

devient
Code
If N-15




Code
For(I,1,300(N=5)+500(1<partEnt(N/5

devient
Code
For(I,1,E2(3(N=5)+5(1<partEnt(.2N




Code
:   Disp "","","","FELICITATION","","TU AS GAGNE !","","TON NOM ENTRERA","DANS LA LEGENDE!
:   Pause

devient
Code
:   Disp "","","","FELICITATION","","TU AS GAGNE !","","TON NOM ENTRERA
:   Pause"DANS LA LEGENDE!




Code
If I/7=ent(I/7:Pause

devient
Code
If non(fPart(7[^-1]I



Sandro

----------------------
mort à l'inutile, place à la mémoire libre et aux programmes
 Adresse email Haut de page Bas de page 
 
mystery_enigma



Autorisation : Membre
Nb de messages : 16
Inscrit le : Sam 04 Fév 2012, 23:16
Posté le : Jeu 19 Avr 2012, 2:03   Citer 

Petit aparté littéraire :


Citer : Sangohan38
ENFIN DANS LA","RUBRIQUE DEDIEE","AU VAINQUEURS","POUR L'INSTANT... << Tu as fait une faute d'orthographe! >>


Ah oui, et quelle faute ! Merci de l'avoir signalée. Cependant je n'ai pas bien saisi ce que tu entendais par :

Citer
oui j'accepte mal qu'une personne faisant des erreurs d'orthographe qui changent la sonorité d'un mot me fasse des remarques

car il me semble que dans ma phrase l'ajout du "x" à la fin du "au" ne change en rien l'aspect phonétique de celle-ci (à moins que tu ne parles d'une autre faute ?). De plus, si tu connais des personnes irréprochables au niveau de n'importe quel domaine ou si tu en trouves un jour n'oublie pas de me faire signe. Il me semble pourtant que tu fais régulièrement des remarques sur ce forum à propos de la qualité des codes postés par les internautes (ce que je trouve tout à fait profitable). Tu sous-entendrais donc que puisque tu te permets de faire des remarques aux autres sur ce domaine, ton niveau en programmation serait irréprochable ? Laisse moi en douter...


Citer
PS: Il n'y a pas que Molière qui à écrit un français littéraire, il y a toute la pléthore de poètes et écrivains français.


Non sans blague crazy.gif! Sache que la plupart des langues possèdent un équivalent éponymique (langue de Shakespear pour l'anglais, langue de Virgile pour le latin ...). Et il me semble qu'en aucun cas je n'ai dit que Molière ait été le seul à manier d'une façon remarquable cette langue sublime que tu as l'air de malmener au plus haut point.

Fin de l'aparté.



Merci tout de même à Sangohan38 et Sandro pour ces optimisations qui m'ont beaucoup appris et m'ont permis d'éliminer 219 octets par rapport au programme de départ

Cependant, je pense que cette partie de code est fausse Sandro :

Citer : Sandro

Code
D-10ent(0.1D->G   <<avec D=6, G=6



peut je crois être transformé(car D est un entier positif) en

Code
10fPart(.1D->G   <<avec D=6, G=60




 Adresse email Haut de page Bas de page 
 
sandro



Autorisation : Membre
Nb de messages : 1366
Inscrit le : Ven 25 Mar 2011, 22:58
Posté le : Jeu 19 Avr 2012, 9:52   Citer 


Citer : mystery_enigma
Cependant, je pense que cette partie de code est fausse Sandro :

Citer : Sandro

Code
D-10ent(0.1D->G   <<avec D=6, G=6



peut je crois être transformé(car D est un entier positif) en

Code
10fPart(.1D->G   <<avec D=6, G=60





Refait bien le second calcul, il donne bien 6 comme le premier:
.1*6=0.6
fPart(0.6)=0.6
10*0.6=6
donc 10*fPart(.1*6)=6
CQFD

----------------------
mort à l'inutile, place à la mémoire libre et aux programmes
 Adresse email Haut de page Bas de page 
 
mystery_enigma



Autorisation : Membre
Nb de messages : 16
Inscrit le : Sam 04 Fév 2012, 23:16
Posté le : Jeu 19 Avr 2012, 12:49   Citer 

Ah d'accord désolé. Je pensais que fpart(ou partDec en français) renvoyait la partie décimale sous forme unitaire, par exemple 6 avec 4.6, mais il s'avère que mon raisonnement était complètement faux; merci pour ton intervention Sandro happy.gif
Avec toutes ces optimisations, je pense qu'un nouveau post de mon programme s'impose :

Code
If partDec([thêta)min]
:Then
:   0->[(thêta)min]
:   "->chaîne0
:End
:EffEcr
:Lbl Z
:Menu("  CALCUL MENTAL ","    JOUER",A,"  VAINQUEURS",B,"   QUITTER",C
:Lbl A
:1->H
:EffVar QEffvar LEffvar NEffVar ZInput "TON PSEUDO STPL:",chaîne1
:EffEcr
:Output(3,1,"OK "+chaîne1
:Output(4,1,"C'EST QUAND TU  VEUX !
:Pause
:Repeat N=30
:   Effvar QEffvar HEffEcr
:   (N>9)entAléat(11,19->J
:   (N>19)entAléat(11,20->M
:   (N[inférieur ou égal à]9)entAléat(2,9->B
:   (N<20)entAléat(2,9->C
:   (B+J)*(C+M->D
:   $E$2ent(.01D->L                         << C'est le E de la puissance de 10 que je noterai $E$ à partir de maintenant (sur TI on peut le trouver en faisant "2nde"+",")>>
:   10ent(0.1D->F
:   If F>99:F-L->F
:   10partDec(.1D->G
:   (L[différent de 0)(92-10ent((L-$E$2)/300)+3partDéc((L-$E$2)/300))+(F[différent de]0)(92-10ent((F-10)/30)+3partDéc((F-10)/30))+(G[différent de]0)(92-10ent((G-1)/3)+3partDéc((G-1)/3))+102(G=0)+((F<L)not(F
:   Output(1,1,"LEVEL
:   Output(1,8,N+1
:   Output(7,1,"IL TE RESTE  s
:   If B+J>9
:      Output(4,1,J
:   If B+J[inférieur ou égal à]9
:      Output(4,2,B
:   Output(4,3,"*
:   Output(4,4,C+M
:   Output(4,6,"=
:   For(I,1,4
:      Disp "
:   End
:   For(I,200-50(N>4)-30(N>14),1,-1
:      Output(7,13,ent(.25I
:      codeTouche->K
:      (K+Q)(K(différent de)45->Q
:   End
:   EffEcr
:   If Q-H
:   Goto (théta)
:   1+N->N
:   For(I,1,80
:      Output(4,4,"LEVEL UP !
:   End
:   EffEcr
:   For(I,1,800
:      If N-15
:         800->I
:      If N=15
:         Disp "AUGMENTER","VITESSE ?
:   End     
:   For(I,1,$E$2(3(N=5)+5(1<partEnt(0.2N
:      If N=5
:         Output(4,3,"PLUS VITE !
:      If N=10
:         Disp "BIEN, ON VA","POUVOIR PASSER","AUX CHOSES","SERIEUSES =}
:      If N=15
:           Then
:           Disp "TU PENSAIS","VRAIMENT AVOIR,"LE CHOIX x1   <<c'est le x1 des variables statistiques, accessible en tapant"var"->"Statistiques..."->"PTS"->"1>>
:           Output(3,11,"D
:           End
:      If N=20
:         Disp "IMPRESSIONANT !","MAIS SERAS-TU","CAPABLE D'ALLER","JUSQU'AU BOUT ?
:   End
:End
:EffEcr
:Lbl (thêta)
:Output(3,1,chaîne1
:Disp "","DESOLE","","TU AS PERDU...","TON SCORE EST DE"
:Output(6,8,N
:If N=30
:Then
:   Disp "","","","FELICITATION","","TU AS GAGNE !","","TON NOM ENTRERA
:   Pause"DANS LA LEGENDE!
:   EffEcr
:   Disp "","ENFIN DANS LA","RUBRIQUE DEDIEE","AUX VAINQUEURS","POUR L'INSTANT...
:   "("+chaîne1+")"+chaîne0->chaîne0
:   1+[(thêta)min]->[(thêta)min]
:End
:Pause
:EffEcr
:Goto Z
:Lbl B
:If [(thêta)min]>0
:Then
:   longueur(chaîne0->L
:   [(thêta)min]->I
:   For(I,1,[(thêta)min]
:      carChaîne(chaîne0,"("->N
:      carChaîne(chaîne0,")"->M
:      sous-Chaîne(chaîne0,N+1,M-1-N->chaîne8
:      Disp chaîne8
:      If non(partDec(7[^-1^]I:Pause
:      sous-Chaîne(chaîne0,M+1,L-M)+"("+chaîne8+")->chaîne0
:   End
:Else
:   Output(4,7,"VIDE
:End
:Pause
:EffEcr
:Goto Z
:Lbl C
:EffEcr
:Disp "BY MOMOTHEFIRST","       =)



 Adresse email Haut de page Bas de page 
 
sandro



Autorisation : Membre
Nb de messages : 1366
Inscrit le : Ven 25 Mar 2011, 22:58
Posté le : Jeu 19 Avr 2012, 13:33   Citer 

encore 2 autres:

Code
:      carChaîne(chaîne0,"("->N
:      carChaîne(chaîne0,")"->M

devient
Code
:      carChaîne(chaîne0,"(->N
:      carChaîne(chaîne0,")->M



et

Code
:   (L[différent de 0)(92-10ent((L-$E$2)/300)+3partDéc((L-$E$2)/300))+(F[différent de]0)(92-10ent((F-10)/30)+3partDéc((F-10)/30))+(G[différent de]0)(92-10ent((G-1)/3)+3partDéc((G-1)/3))+102(G=0)+((F<L)not(F

devient
Code
:   not(L)(92-10ent((L-$E$2)/300)+3partDéc((L-$E$2)/300))+(F[différent de]0)(92-10ent((F-10)/30)+3partDéc((F-10)/30))+(G[différent de]0)(92-10ent((G-1)/3)+3partDéc((G-1)/3))+102(G=0)+((F<L)not(F


d'ailleur, c'est quoi ces "$"?

Sandro

PS : maintenant, il y en a pour combien d'octets?

----------------------
mort à l'inutile, place à la mémoire libre et aux programmes
 Adresse email Haut de page Bas de page 
 
Google_AdSense



Publicité    



 
Sangohan38



Autorisation : Membre
Nb de messages : 3293
Inscrit le : Sam 31 Déc 2005, 19:48
Posté le : Jeu 19 Avr 2012, 16:46   Citer 

Je n'ai jamais vu un sujet avec autant de citations. Va falloir vous calmer: quand il s'agit du message précédent pas la peine de faire de citation.

Bon sinon à propos du $E$ c'est pour indiquer que c'est le E de la puissance de 10. Ainsi $E$2=100 ce qui fait un octet d'économisé.


@ Mystery-enigma: je voulais dire que je n'accepte pas qu'une personne faisant des fautes d'orthographes qui changent la phonétique (ex: vous avais au lieu de vous avez) me fassent des remarques ce qui n'est pas ton cas.


@ Sandro: Je ne vois pas l'intérêt de cette modification: "If Q[différent de H devient If Q-H" car cela n'économise pas d'octets. Pareil pour la modification qui la suit.
A part sa, dans ta dernière ligne de code je ne vois pas l'intérêt du 7^(-1)... Autant mettre I/7.

Sangohan38

 Adresse email Haut de page Bas de page 
 
linkakro



Autorisation : Membre
Nb de messages : 3738
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Jeu 19 Avr 2012, 17:02   Citer 

Sandro te répondra probablement que c'est plus rapide.
(c'est vrai mais négligeable)

J'hallucine sur le nombres de modifications simples qui ont été effectuées.
Et les grosses simplifications sont bien aussi
Continue comme ça happy.gif
(moi je ne suis pas vraiment libre, désolé)

----------------------
ti82statfr: 2008, inscrit: 2009, ti84pocketfr: noël2011, ti30xbmultiview: iut 2012-2014
Perfectionniste, manque tact. Pas le temps de tout publier depuis 2011. Répond toujours aux questions. (rédigé juin 2014)

Pour tout le monde et surtout les débutants, quelques-uns des articles courants :
*Traductions Algorithmie/Ti-Basic.
*Caractères spéciaux sur Tout82
Les défauts du TI-Basic : Goto_versus_algo et DelVar/End/Lbl/guillemet/store
 Adresse email Haut de page Bas de page 
 
Google_AdSense



Publicité    



 
sandro



Autorisation : Membre
Nb de messages : 1366
Inscrit le : Ven 25 Mar 2011, 22:58
Posté le : Jeu 19 Avr 2012, 21:22   Citer 

Oui, pour ces modifications, c'est un gain de temps (les tests, c'est lourd, même si ça l'est pas autant que les If), et en plus, c'est une habittude que je commence à prendre avec l'axe (ou même !IfA-B est plus léger que If A=B).

----------------------
mort à l'inutile, place à la mémoire libre et aux programmes
 Adresse email Haut de page Bas de page 
 
mystery_enigma



Autorisation : Membre
Nb de messages : 16
Inscrit le : Sam 04 Fév 2012, 23:16
Posté le : Jeu 19 Avr 2012, 22:53   Citer 

@Sangohan38 : Désolé pour le malentendu sur les fautes de grammaire et changements de phonétique; je pensais que ta critique m'était adressée.

@Sandro : Je prends note de tes nouvelles optimisations. Par contre la seconde est en partie fausse puisque not(L) renvoie 1 si L=0 alors que L[différent de] 0 renvoie 0 si L=0.
Mais du coup on peut écrire ça:

Code
:   (L[différent de]0)(92-10ent((L-$E$2)/300)+3partDéc((L-$E$2)/300))+(F[différent de]0)(92-10ent((F-10)/30)+3partDéc((F-10)/30))+G[différent de]0)(92-10ent((G-1)/3)+3partDéc((G-1)/3))+102not(G)+((F<L)not(F


Ce qui reprend ton idée avec l'histoire des not(.
Bon, bah... ça va nous faire 211 octets d'économisés ! On peut dire qu'on a fait pas mal de chemin depuis le premier code glasses.gif

 Adresse email Haut de page Bas de page 
 
sandro



Autorisation : Membre
Nb de messages : 1366
Inscrit le : Ven 25 Mar 2011, 22:58
Posté le : Jeu 19 Avr 2012, 22:58   Citer 

pardon, c'était une étourderie, c'est bien ta version qui est correcte

----------------------
mort à l'inutile, place à la mémoire libre et aux programmes
 Adresse email Haut de page Bas de page 
 
Poster un nouveau sujet Poster une réponse





  Page générée en 6 requêtes