[83]Easy f'(x), version finale de DERIVE
2 participants
Page 1 sur 1
[83]Easy f'(x), version finale de DERIVE
Pendant les exams, on ressort les programmes utiles, et on laisse les jeux de coté. (A ce propos, dsl si il y en a qui attendaient HERSSAHE 5.0, il est très en retard.)
Vous vous souvenez peut être du programme de dérivation de fonctions que j'avais fait l'année dernière, eh bien le voilà définitivement bouclé, avec une belle présentation inutile, et plus aucun bug.
il peut dériver presque toutes les fonctions de base, avec un facteur, ainsi que certaines fonctions composées avec les ln, les exponentielles et les fractions.
Tout est expliqué dans le joli mode d'emploi que je me suis em***** à programmer et qui fait que le seul désavantage du prog est sa taille: 3.7 Ko.
si vous souhaitez copier le code car vous n'avez pas le cable:
si vous souhaitez le télécharger, c'est possible: c'est un *.8xp, mais si vous le renommez en *.83p, vous pourrez l'envoyer sur les 82 stats (fr). Pas les 82 basiques.
[Vous devez être inscrit et connecté pour voir ce lien]
Rappel : les minuscules sont dans le menu var>stat excepté "e" qui est l'exponentielle de la touche "diviser" et "i" qui est l'immaginaire de la touche ".". les y et x minuscules ont une barre dessus, c'est pas plus moche.
#rac sert à ce que vous voyez bien que c'est la fonction racine et pas du texte.
Vous vous souvenez peut être du programme de dérivation de fonctions que j'avais fait l'année dernière, eh bien le voilà définitivement bouclé, avec une belle présentation inutile, et plus aucun bug.
il peut dériver presque toutes les fonctions de base, avec un facteur, ainsi que certaines fonctions composées avec les ln, les exponentielles et les fractions.
Tout est expliqué dans le joli mode d'emploi que je me suis em***** à programmer et qui fait que le seul désavantage du prog est sa taille: 3.7 Ko.
si vous souhaitez copier le code car vous n'avez pas le cable:
si vous souhaitez le télécharger, c'est possible: c'est un *.8xp, mais si vous le renommez en *.83p, vous pourrez l'envoyer sur les 82 stats (fr). Pas les 82 basiques.
[Vous devez être inscrit et connecté pour voir ce lien]
Rappel : les minuscules sont dans le menu var>stat excepté "e" qui est l'exponentielle de la touche "diviser" et "i" qui est l'immaginaire de la touche ".". les y et x minuscules ont une barre dessus, c'est pas plus moche.
#rac sert à ce que vous voyez bien que c'est la fonction racine et pas du texte.
- Code:
:FnOff
:AxesOff
:0->Xmin:94->Xmax
:0->Ymin:62->Ymax
:Lbl 0
:ClrDraw
:Horizontal 60
:Horizontal 59
:For(A,1,12
:For(B,0,1
:Text(4,10+5A+B,sub("easy F'(x) !",A,1
:End:End
:Horizontal 51
:Horizontal 50
:30->A
:{28,47,73->L1
:Line(15,30,88,30
:Line(15,30,15,33
:Text(25,17,"deriver une FOnctiOn
:Text(35,17,"MOde d'eMp1Oi
:Text(45,17,"credits
:Repeat K=105 or K=45
:getKey->K
:If K=25 or K=34:Then
:Line(15,A,15+L1(A.1),A,0
:Line(15,A,15,A+3,0
:A+10(K=25)-10(K=34->A
:If not(A:30->A
:If A=40:10->A
:Line(15,A,15+L1(A.1),A
:Line(15,A,15,A+3
:End
:End
:If K=45:Goto Q
:If A=10:Then
:ClrDraw
:Horizontal 60
:Horizontal 59
:Horizontal 51
:Horizontal 50
:"credits
:For(A,1,7
:For(B,0,1
:Text(4,21+5A+B,sub(Ans,A,1
:End:End
:Text(25,23,"(C) cOpyriGHt
:Text(32,28,"persa1teas
:Text(39,38,"2010.
:Text(13,47,"easy F'(x) v 2.0
:Text(46,5,"rea1ise pOur Espace-TI
:Text(54,6,"cOncOurs de nOv. 2010.
:Repeat getKey
:End:End
:If A=20:Then
:ClrDraw
:Horizontal 60
:Horizontal 59
:Horizontal 50
:Horizontal 51
:"CONSIGNES
:For(A,1,9
:For(B,0,1
:Text(4,5A+B+15,sub(Ans,A,1
:End:End
:Text(13,0,"-REFERMEZ LES PARENTHESES
:Text(19,0,"-PAS DE FORMES FACTORISEES
:Text(25,0,"-PAS PARENTHESES INUTILES
:Text(31,0,"-PAS DE FONCTION COMPLEXE
:Text(37,0,"-5 TERMES PAR FONCTION MAX.
:Text(43,0,"-CHAQUE TERME PEUT ETRE UN
:Text(49,0,"PRODUIT SIMPLE:
:Text(55,0,"2X²,-cos(X),(3+2)#rac((X),5/X...
:Pause
:For(A,49,0,-1
:Line(0,A,94,A,0
:End
:Text(13,0,"LES PUISSANCES SONT
:Text(20,0,"COMPRISES EN DENOMINATEUR
:Text(27,0,"DE FRACTION ET DANS LES
:Text(34,0,"LOGARITHMES NEPERIENS.
:Text(45,0,"-1/(X^6),ln(X³),-ln(X^8)
:Text(52,0,"2X^7,X³,-X²...
:Pause
:For(A,49,0,-1
:Line(0,A,94,A,0
:End
:Text(13,0,"EXPONENTIELLES: FONCTIONS
:Text(20,0,"COMPOSEES AUTORISEES MAIS:
:Text(27,0,"REMPLACEZ LES + ET - PAR
:Text(34,0,"DES VIRGULES:
:Text(40,0,"3X²-2X+2e^(6X+2) DEVIENT:
:Text(50,10,"3X²-2X+2e^(6X,2)
:Pause
:For(A,49,0,-1
:Line(0,A,94,A,0
:End
:Text(13,0,"LES CHOSES INCOMPRISES:
:Text(25,0,"- LES RACINES CUBIQUES ET +
:Text(32,0,"- LES TANGENTES
:Text(39,0,"- LES LOGARITHMES DECIMAUX
:Text(46,0,"- LES FACTORIELLES ET
:Text(52,0,"AUTRES FONCTIONS COMPLEXES.
:Pause
:ClrDraw
:End
:If A<30:Goto 0
:ClrDraw:ZStandard:AxesOn
:ClrHome
:Input "F(X)=",Str0
:Output(8,1,"derivatiOn...
:If not(inString(Str0,"X":Then
:ClrHome
:Disp "F'(X)="," 0
:Output(8,1,"
:Goto Q
:End
:0->N:0->K:0->M
:"0->Str1
:"0->Str2
:"0->Str3
:"0->Str4
:"0->Str5
:Repeat K=9
:sub(Str0,1,1->Str9
:If not(Str9="1" or Str9="2" or Str9="3" or Str9="4" or Str9="5" or Str9="6" or Str9="7" or Str9="8" or Str9="0":Then
:If Str9=/="-":"1"+Str0->Str0
:If Str9="-":Then
:sub(Str0,2,1->Str9
:If not(Str9="1" or Str9="2" or Str9="3" or Str9="4" or Str9="5" or Str9="6" or Str9="7" or Str9="8" or Str9="9"
:"-1"+sub(Str0,2,length(Str0)-1->Str0
:End
:End
:If M:"-"+Str0->Str0
:inString(Str0,"+"->A
:inString(Str0,"-"->B
:If (B<A and B and A) or (B and not(A:Then
:B->A:1->M
:Else
:0->M
:End
:If A:Then
:N+1->N
:sub(Str0,1,A-1->Str9
:If N=1:Str9->Str1
:If N=2:Str9->Str2
:If N=3:Str9->Str3
:If N=4:Str9->Str4
:sub(Str0,A+1,length(Str0)-A->Str0
:sub(Str0,1,1->Str9
:Else
:9->K
:Str0->Str5
:End
:End
:0->L1(1
:0->L2(1
:0->L3(1
:0->L4(1
:0->L5(1
:0->L6(1
:0->M:0->R
:For(K,1,5
:If K=1:Str1->Str9
:If K=2:Str2->Str9
:If K=3:Str3->Str9
:If K=4:Str4->Str9
:If K=5:Str5->Str9
:
:
:16->M:0->A
:inString(Str9,"e^("->A
:If not(A:Then
:M-1->M
:max(inString(Str9,"ln(X²"),inString(Str9,"ln(X^2"->A
:End
:If not(A:Then
:M-1->M
:max(inString(Str9,"ln(X³"),inString(Str9,"ln(X^3"->A
:End
:If not(A:Then
:M-1->M
:inString(Str9,"ln(X^->A
:End
:If not(A:Then
:M-1->M
:inString(Str9,"ln(X->A
:End
:If not(A:Then
:M-1->M
:max(inString(Str9,"/(X^"),inString(Str9,"/X^->A
:End
:If not(A:Then
:M-1->M
:max(inString(Str9,"/(X³"),inString(Str9,"/X³->A
:End
:If not(A:Then
:M-1->M
:max(inString(Str9,"/(X²"),inString(Str9,"/X²->A
:End
:If not(A:Then
:M-1->M
:max(inString(Str9,"X-1"),inString(Str9,"/X->A
:End
:If not(A:Then
:M-1->M
:inString(Str9,"#rac((X)->A
:End
:If not(A:Then
:M-1->M
:inString(Str9,"cos(X)->A
:End
:If not(A:Then
:M-1->M
:inString(Str9,"sin(X)->A
:End
:If not(A:Then
:M-1->M
:inString(Str9,"X²->A
:End
:If not(A:Then
:M-1->M
:inString(Str9,"X³->A
:End
:If not(A:Then
:M-1->M
:inString(Str9,"X^->A
:End
:If not(A:Then
:M-1->M
:inString(Str9,"X->A
:End
:If not(A:M-1->M
:If M:expr(sub(Str9,1,A-1->L1(1
:If M=12:"/X->Str9
:If M=15:2L1(1->L1(1
:If M=16:Then
:inString(Str9,"X
:If Ans:Then
:expr(sub(Str9,A+1,Ans-A-1->N
:NL1(1->L1(1
:sub(Str9,A,length(Str9)-A+1->Str9
:Else
:0->L1(1:" "->Str9:End:End
:If M=14:3L1(1->L1(1
:If M=13:Then
:sub(Str9,4,length(Str9)-4->N
:NL1(1->L1(1
:End
:If M<16 and M>12:"ln(X)->Str9
:If M=11:Then
:expr(sub(Str9,A+3+(inString(Str9,"/(X")>0),1->N
:-NL1(1->L1(1
:N+1->L1(2
:End
:If M=10 or M=11:"/(X^->Str9
:If M=10:Then
:-3L1(1->L1(1
:4->L1(2
:End
:If M=9:Then
:-2L1(1->L1(1
:"/(X³)->Str9
:End
:If M=8:"/(X²)->Str9
:If M=8 or M=6:-L1(1->L1(1
:If M=7:"/(2#rac((X))->Str9
:If M=6:"sin(X)->Str9
:If M=5:"cos(X)->Str9
:If M=4:Then
:2L1(1->L1(1
:"X->Str9
:End
:If M=3:Then
:3L1(1->L1(1
:"X²->Str9
:End
:If M=2:Then
:expr(sub(Str9,A+2,1->N
:NL1(1->L1(1
:N-1->L1(2
:"X^->Str9
:If N=4:"X³->Str9
:If N=3:"X²->Str9
:If N=2:"X->Str9
:End
:If M=1:" ->Str9
:If M:Then
:R+1->R
:If R=1:Then
:L1->L2
:Str9->Str1:End
:If R=2:Then
:L1->L3
:Str9->Str2:End
:If R=3:Then
:Str9->Str3:L1->L4
:End
:If R=4:Then
:L1->L5
:Str9->Str4:End
:If R=5:Then
:L1->L6
:Str9->Str5:End
:End
:End
:ClrHome
:R->C
:Disp "F'(X)=
:If not(C:Disp "AUCUNE IDEE
:For(R,1,C
:If R=1:Then
:L2->L1:Str1->Str9
:End
:If R=2:Then
:L3->L1:Str2->Str9
:End
:If R=3:Then
:L4->L1:Str3->Str9
:End
:If R=4:Then
:L5->L1:Str4->Str9
:End
:If R=5:Then
:L6->L1:Str5->Str9
:End
:If R>1 and 0<=L1(1:Output(R+1,1,"+
:If 0>L1(1:Output(R+1,1,"-
:If Str9=" " or inString(Str9,"/") or 1=/=abs(L1(1
:Output(R+1,2,abs(L1(1
:Output(R+1,4,Str9
:If inString(Str9,"X^":Output(R+1,6+2(Str9="/(X^"),L1(2
:End
:Output(8,1,"
:Lbl Q
:DelVar Str1DelVar Str2DelVar Str3DelVar Str4DelVar Str5DelVar Str0DelVar Str9
:ClrAllLists
persalteas- Platinum 2
- Sexe :
Age : 29
Messages : 2068
Date d'inscription : 30/06/2010
Etudes : PACES (médecine)
Points Forum : 114
Points Concours : 10
Langages :- - TI-Basic Z80
- - xLib
- - Grammer
- - TI-Basic Nspire
- - TI-82 Stats.fr
- - TI-83
- - TI-83+
- - TI-84+ SE
- - TI-86
- - TI-Nspire
- - TI-Nspire CX
- - Casio Collège
- - Casio Graph
Re: [83]Easy f'(x), version finale de DERIVE
Je le télécharge !
Edit: Vraiment bravo, il est propre et fonctionne à merveille.
Edit: Vraiment bravo, il est propre et fonctionne à merveille.
Sujets similaires
» [83] programme calendrier Version 1
» [Xlib] HERSSAHE 5.0 version bêta
» [82] HERSSAHE 3.2 , rpg graphique
» La version 0.8 approche !
» 2048 final version !
» [Xlib] HERSSAHE 5.0 version bêta
» [82] HERSSAHE 3.2 , rpg graphique
» La version 0.8 approche !
» 2048 final version !
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum