Faire une (vraie) antisèche !

Sur Ti-82, Ti-83, Ti-84                   

Tout d'abord, ce que j'entends comme une 'vraie' antisèche, c'est une antisèche programmé, contrairement à une pratique plus répandu, plus facile, mais beaucoup moins efficace (surtout si l'antisèche est longue) qui consiste à entrer barbarement les formules en vrac dans édit..., tout le monde le fait.

Alors pourquoi faire une antisèche programmée si on peut en faire une simple: tout simplement parce que, avec un programme, vous avez accès un à maximum d'info en un minimum de temps, grâce au menu, de plus on peut mettre des parties résolutions, la c le pied.

version téléchargeable(document word zipé)

Plan: 

I)antisèches simples

II) antisèches avec menu

III) antisèches complexes (avec résolution )

IV) Mots de passes..

 

I)Antisèches de base

Tout d'abord créé un programme, donner lui un nom et entrer dans édit

 

voici les fonctions de base pour écrire le texte:

ClrHome (prgm, -->,8): efface l'écran texte. toujours mettre avant de mettre du texte

-disp "vos formules" (prgrm, -->,3) : ne marche que pour une ligne et fait défiler l'écran...

-output(X,Y,"votre antisèche") (prgm,-->,6): c'est la fonction que nous allons utiliser. X correspond a la ligne(1-8), Y a la colonne (1-16). Vous métrez output(1,1,"votre antisèche" de façon générale. Grâce a cette fonction vous pouvez écrire sur 8 lignes d'un coup.

-pause (prgm,8) comme son nom l'indique, met une pause: la calculette fait une pause et attend que vous appuyer sur enter pour passer a l'instruction suivante. IL suffit donc de mettre un pause après le texte puis vous prouvez remettre un 2ém écran de texte (faite comme ci-dessu) et ainsi de suite

-stop: fini le programme et revient a l'écran classique

Exemple d'antisèche simple:

PROGRAM:GRUGE      
:ClrHome  
:Output(1,1,"vous pouvez taper ici toutes vos formules sur 8 lignes !"  
:Pause  
:ClrHome   
:Output(1,1,"vous taper ici toutes les autres formules formules sur 8 lignes !"  
:Pause  
:Stop  
   

II)Antiséche avec menu

Maintenant que vous commencer a savoir les bases, passons au grosses antisèches, qui ont besoin d'un menu pour être plus performant.

Voici, les 3 nouvelles instructions:

Menu("Titre du menu","rubrique1",A,"rubrique2",B,"rubrique",C) 

Lbl X   indique un "endroit"

Goto x fait un saut (en avant ou en arrière) à l'endroit désigné par un label

 vous prouver mettre 7  rubrique dans 1 menu.

Le titre du menu va s'afficher en haut, blanc sur noir.

Ensuite, chaque rubrique s'associe à un label (A,B,C..Z,0,1,2,9)

vous êtes libre de décider du label, mais il ne doit comporter qu'une seule lettre ou chiffre.

Vous comprendrez sûrement mieux avec cet exemple:

PROGRAM:GRUGE  
:ClrHome  
:Lbl A  
:Menu("FORMUL SPH","FORM PH",1,"FORM CH",2,"STOP",3)  
:Lbl 1  
:ClrHome  
:Output(1,1,"taper ici toutes vos formules de physiques !"  
:Pause  
:Goto A   
:Lbl 2  
:ClrHome  
:Output(1,1,"taper ici toutes vos formules de chimie !"
:Pause   
:Goto A   
:Lbl 3  
:ClrHome  
:Stop  

Voila. Vous remarquerez que j'ai mi un label juste devant le menu, de cette façon l'utilisateur (oui vous sale tricheur !) sélectionne la rubrique dans le menu, appui sur enter, lit le contenu, et rapuis sur enter pour retourner au menu (Pause suivi d'un goto au label devant le menu)

Pour effacer le "done" qui s'affiche quand vous avez quitter un programme, il exist une astuce, entrer ces ligne a la place de stop pour quitter le programme:

:ClrHome  
:Output(1,1,"  //ne laisser qu'1 guillemet, c'est fait exprès  
:Stop  

 

                                                                                                                                                        

Et maintenant, les prof ne pourrons même plus calculer que vous venez de quitter un programme quand il passent !

III)Antisèches complexes  (avec résolution)

Le top des antisèches, pour les math ou la physique, c'est des antisèches avec résolution intégré. Commencer simplement par faire comme si dessus, un petit menu, le cours puis réserver une rubrique pour la résolution. Ensuite il faut avoir la (ou les ) formules utilisés. Voici les quelques instructions utiles :

Imput "question",X

Vous n'êtes pas obligé de mettre une "question" mai c'est utile pour préciser quel valeur on veut. X correspond à la variable (A-Z, L1(1) ,[A](5,2) .....).

ATENTION, si vous rentrer le variable dans une liste ou une matrix, il faut mieux la former avant avec dim ( [MATRIX],-->,3)

5--> dim L1

{5,8}--> dim [A]  //sélectionner [A] dans les matrices, ne le taper pas !

Une fois toutes les valeur enregistrées, il vous suffit d'appliquer la formule dans le programme et d'afficher le résultat. Pour afficher le résultat, faites comme avec du texte,remplacer le texte par la variable du résultat, mais ne mettez pas de guillemets. exemple:

:Output(5,5,A

Exemple d'un programme avec résolution:

PROGRAM:GRUGE

Comentaires

:ClrHome  
:Lbl A  
:Menu("FORMUL SPH","FORM PH",1,"FORM CH",2,"STOP",3, "RESOUDRE", 4)  
:Lbl 1  
:ClrHome //efface l'écran
Output(1,1,"taper ici toutes vos formules de physiques !" //affiche les formules
:Pause //attend que l'on appui sur enter
:Goto A //revient au menu
:Lbl 2  
:ClrHome  
:Output(1,1,"taper ici toutes vos formules de chimie !"  
:Pause  
:Goto A  
:Lbl4  
:ClrHome  
:Imput("valeur de X ? ",A)  
:Imput("valeur de Y?",B)  
:(5X/sinY)-->C //mettez votre formule ici
:ClrHome  
:Output(1,1," RESULTAT: "  
:Output(2,1,C ) //affiche le resultat
:Pause  
:Goto A  
:Lbl 3  
:ClrHome  
:Stop //quitte le programme

Après si vous voulez faire des gruges encor un peu + complexe, (Style Tabz) il faut faut quelques bonnes notions de programmation, la meilleur façon pour apprendre est de regarder comment fonctionnent les programmes, c'est comme sa que j'ai tout appris, sur le tas !

IV)Mots de Passes

Si vous avez des Prof un peu trop curieux, une bonne solution est de mettre un mot de passe efficace.

Tout d'abord, il faut que la source du programme soit protéger, de telle façcon que les petits malin ne puissent pas aller regarder dans édit. Pour protéger la source, ouvrer votre programme avec TI-Graph link-82 et cocher le case [protected], puis enregistrez le et mettez le sur votre calculette.

Ensuite nous allons distinguer deux types de mdp (Mote De Passe):

 

    A)Mots de passes Classique

Vous avez déjà du en voir, on vous demande un chifre ou un mot pour pouvoir rentrer dans le programme, c'est assez facile à faire, regarder plutôt:

   
PROGRAM:MDP //comentaires et explications
ClrHome //Efface l'écran
Input "PASSE ?  ",A //Affiche passe et demande la valeur de A
If A=1598 //  Verifi si le mot de passe est bon
Then //si il est bon alors...
Goto U //le programme saut jusque qu'au label U
Else //si le mdp  est faux alors...
Stop //fini le programme si mdp faux
End //fin de if
   
Lbl U //Label qui contient tout le reste du programme
ClrHome //
Output(1,1," C'EST BON" //Faites ici votre programme comme d'habitude
Pause //
Stop //

On a utilisé qu'un nouveau groupe d' instructions:

If .... If est toujours suivi d'une condition de type boléene (If A=15, If A<15.......).
Then si la condition est rempli, le groupe d'instructions situé après Then est exécuté (
Else. si la condition n'est pas respecté, le groupe d'instruction se situant après else s'exécute
End OBLIGATOIRE, marque la fin de la condition

Pour gagner du temps et de la place, il existe une autre méthode, qui marche uniquement s'il n'y a qu'une seule instruction quand la condition est rempli:

:If A=1598 //si le mot de passe est le bon (1598 ici)
:Goto U //alors le programme saute au label U
:Stop //Sinon il s'arréte

C'est une méthode qui permet d'alléger les programmes, en plus assez rapide.

Si la condition est rempli, l'instruction qui suite est effectué, sinon elle est sauté.

Sacher enfin que l'on peut utiliser if...then..end  sans mettre de else.

Bon, encor un truck important: ne mettez surtout pas un mot de passe en lettre (du style "If A=tcon") car la machine comprendra t*c*o*n et il suffit d'effacer toute les variables de la calculette, et d'entrer 0, le mdp sera bon (0*0*0*0=0  lol)

Maintenant vous pouvez mettre un mot de passe inviolable si vous vez respecté tou ce que j'ai dit. Mais si vous voulez un mdp vraiment discret, lisez la deuxième partie:

    B)Mot de passe tactile

Le principe est assez simple:quand on lance le programme, celui-ci affiche un graphique à la con, le prof croira que c'est juste un programme graphique, mais quand vous appuierai sur une touche prédéfini, le vrai programme (l'antisèche) se lancera alors. Et si le prof appui par hazard sur la touche ?, me direz vous , il suffi de répéter l'opération le prof n'appuiera jamais par hasard sur les 3 touches secrètes à la suite, sinon vous pouvez toujours mettre un mdp classique après le mdp tactile.

Nouvelles instructions utiles:

Trace //affiche le graphique en cour
Getkey //permet de détecter la touche pressé
For (X,val départ,val arrivée, pas) //boucle.
End //Fin de la boucle

 X est la valeur qui va varier de la valeur de départ jusqu' a la valeur arrivé, en ajoutant a chaque tour le pas. Vous n'êtes pas obliger de définir le pas, sa valeur pas défaut est 1. 

Un fois que x a atteint la valeur d'arrivé, la boucle s'arrête et la machine exécute les instructions après End., tant que la boucle n'est pas fini, la machine répète les instruction a l'intérieur de la boucle.

Si vous ne comprenez pas, ce n'est pas grave, nous allons l'utiliser ici tout simplement:, regarder bien l'exemple:

PROGRAM:MDP  
:Trace Trace le graphique en cour
:For(X,1,1E99) boucle
:If Getkey=52:GotoU si la touche pressé est sin, saut au reste du programme
End  
Stop si la boucle se fini, arrête le programme
Lbl U //Label qui contient tout le reste du programme
ClrHome //
Output(1,1," C'EST BON" //Faites ici votre programme comme d'habitude
Pause //
Stop //

La boucle est pratiquement infini, et si par miracle elle s'arréte toute seule, le programme s'arréte.

Getkey renvoi un nombre qui correspond a une touche, comme vous avez du pommer votre boukin, je vous ai trouvé un petit dessin:

 

Sinon,pour le fun ,il suffit d'un petit programme pour vous indiquer le numéro des touches :

PROGRAM:GETKEY  
:ClrHome efface l'écran
:0-->K  
   
:Lbl A  
:For(X,1,1E99 boucle for infini
:getkey-->J enregistre le numéro de la touche appuyé en J
:If J≠K and J≠0 Si J est diff de 0 et de K (dernière touche appuyé)
:Then alors
:J-->K enregistre J en K
:Goto B et saut au label B
:End fin de if..Then
:End fin de la boucle For
   
:Lbl B label B
:Clrhome Efface l'écran
:disp K affiche la valeur de K
:Goto A Revien au label A pour recommencer la boucle

Bon si vous avez bien suivi, vous devriez comprendre, mais sinon ce n'est pas grave, laisser tomber.

Alors ce n'est pas si compliqué ? nous allons maintenant voir pour avoir une combinaison de plusieurs touches de suite pour déclancher l'antisèche, toujours selon le même principe, (littéraires s'abstenir..-lol-)

PROGRAM:MDP  
:Trace Trace le graphique en cour
:Lbl 1  
:For(X,1,1E99) boucle
:If Getkey=21:Goto A Si la touche pressé est 2nd, saut vers la boucle qui contrôle le 2ém touche
:End  
   
:Lbl A  
:For(X,1,1E99) //
:If getkey=52:Goto B Si la touche pressé est sin, saut vers la boucle qui contrôle le 3ém touche
:End  
   
Lbl B  
:For(X,1,1E99)  
getkey-->K enregistre getkey en K
:If K=45:Goto C Si la touche pressé est Clear, saut vers le reste du programme
If K≠45 and K≠0:Goto 1 Si la touche appuyé est fausse, retour au début !
:End  
   
Lbl C  
Output(1,1," C'EST BON" //Faites ici votre programme comme d'habitude
Pause //
Stop //

Vous l'aurez compris, la combinaison de touches est [2nd] puis [sin] puis [clear]

Et surtout, si vous voulez un mdp efficace, n'oublier pas de cacher la source du programme (Rappel :  Pour protéger la source, ouvrer votre programme avec TI-Graph link-82 et cocher le case [protected], puis enregistrez le et mettez le sur votre calculette. )

 

Maintenant vous avez toutes les bases pour faire vous même une antisèche. Si vous n'avez pas compris un truck, regarder bien l'exemple, et en ultime recourt, c'est ici:  Ti-Gruge@fr.st