Poster un nouveau sujet Poster une réponse
variation d’une fonction
Auteur Message
monsaibert
Invité
Posté le : Ven 06 Jan 2012, 19:31   Citer 

Code de l'etude des variations d'une fonction

prompt A, B, N
(B-A)/N -> P
Input Y1
I=0
For(X,A,B P)
If Y1(X+P) > Y1(X)
I+1 ->I
End
Disp I

avec A=0, B=5 N=100 (f(crazy.gif=0.5x-1).
Je pensais obtenir 100. 1er resultat:107/ 2ème 208/ 3ème..309

  Haut de page Bas de page 
 
Google_AdSense



Publicité    



 
linkakro



Autorisation : Membre
Nb de messages : 3738
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Ven 06 Jan 2012, 20:47   Citer 

Il manque une remise à zéro de la variable I au début du programme car "I=0" est un test et non une affection. 0->I ou bien EffVar I

Cette approche est originale.
En revanche la valeur de I me semble difficilement exploitable pour écrire un tableau.

----------------------
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 
 
sandro



Autorisation : Membre
Nb de messages : 1366
Inscrit le : Ven 25 Mar 2011, 22:58
Posté le : Ven 06 Jan 2012, 20:56   Citer 

sinon, tu peut faire:

Code
Imput Y1
"nbreDérivé(Y1(X),X,X)" -> Y2     //dans math/8 ; en angalais : nbreDérivé(=nDeriv(



Et comme ça, tu as la fonction dérivée dans Y2 (enfin, de manière numérique) et tu n'aura plus qu'à faire Y2(X) avec x l'abscisse du point pour optenir le nombre dérivé en ce point.

Sandro

----------------------
mort à l'inutile, place à la mémoire libre et aux programmes
 Adresse email Haut de page Bas de page 
 
monsaibert
Invité
Posté le : Sam 07 Jan 2012, 13:35   Citer 

linkakro peux-tu m'expliquer :
"Il manque une remise à zéro de la variable I au début du programme car "I=0" est un test et non une affection. 0->I ou bien EffVar I"

Rq: je n'ai pas fait le code par la derivée parceque je compte utiliser tout celà pour faire du soutien à des élèves de seconde (pareil pour le coefficient directeur..)je souhaite donc toujours dans vos reponses avoir les explications d'"en bas" et celles d'en"haut"..si je puis dire!
ta phrase d'ailleur m'est toute à fait sybilline! c'est une phrase de connaisseur tout de même.

  Haut de page Bas de page 
 
sandro



Autorisation : Membre
Nb de messages : 1366
Inscrit le : Ven 25 Mar 2011, 22:58
Posté le : Sam 07 Jan 2012, 16:09   Citer 


Citer
linkakro peux-tu m'expliquer :
"Il manque une remise à zéro de la variable I au début du programme car "I=0" est un test et non une affection. 0->I ou bien EffVar I"


Ce qu'il veut dire, c'est que, en TI-Basic (le langage de programmation qu'on voit au lycée si on a une Texas Instrument de type TI82(stats(.fr)), TI83(+(.frr)), TI84+(SE,pocket) ), contrairement à d'autres langage de programmation, le symbôle "=" cert exclusivement pour des tests (résultat 0:faux ; 1:vrai) : ton I=0 ,'a donc aucun sens : la calculatrice calcule si I vaut 0 ou pas, mais tu ne te sert pas tu résultat.

Ce qu'il te faut, c'est utiliser la flèche (qui, sur le forum, est généralement symbôlisée par "->" ou par " -> ") qui ce trouve juste audessus de la touche [On] et qui signifie de stoquer ce qu'il y à a gauche dans la variable qu'il y a à droite :

Code
0 -> I


signifie :

Code
Affecter à I la valeur 0



Sandro

PS : s'il s'agit de donner du soutiens à des secondes, tu peut oublier la méthode du nombre dérivé (hors programme), ainsi que le "EffVar I" qui est une notient plus avancée et qui ne sert que à libérer de la place ou a optimiser des programmes.

----------------------
mort à l'inutile, place à la mémoire libre et aux programmes
 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 08 Jan 2012, 18:27   Citer 

Dans une TI, le symbole "=" effectue un test et "->" stocke la valeur de gauche dans la variable de droite.
Dans pratiquement tout autre language (C par exemple) ":=" stocke la valeur de droite dans la variable de gauche et "==" effectue un test.
Donc dans ton programme "I=0" n'affecte pas I à 0 mais effectue un test.
(affecter I à 0 signifie stocker 0 dans la variable I)

En conclusion remplace dans ton programme "I=0" par "0->I".

Tu peux aussi écrire "EffVar I" à la place de "0->I".
"EffVar I" libère de la mémoire en plus de remettre I à zéro.
(EffVar a un autre avantage plus compliqué qui ne concerne pas ton programme, d'où la négation de sandro à propos de EffVar.)

----------------------
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 
 
sandro



Autorisation : Membre
Nb de messages : 1366
Inscrit le : Ven 25 Mar 2011, 22:58
Posté le : Dim 08 Jan 2012, 19:47   Citer 

Pour effvar, c'est surtout que, même parmis les profs, je ne suis pas sur qu'il y ai quelcun au lycée a part 1 ou 2 qui programment un petit peu qui n'en ai seulement entendu parler, donc pour un soutient à des secondes, j'en parles même pas. (enfin, elle est pas bien compliquée à utiliser, mais ne sert à rien tant que l'on ne cherche pas à optimiser ou a faire des programmes vraiment très pointus)

----------------------
mort à l'inutile, place à la mémoire libre et aux programmes
 Adresse email Haut de page Bas de page 
 
monsalbert
Invité
Posté le : Mar 10 Jan 2012, 20:09   Citer 

Je pense que celà marche .On trouve I=101 ( pour N=100 c.à.d. pas= (B-A)/100).
Pouquoi 101 et pas 100? quel est le detail du For(X, A,B,P) dans le comptage par rapport à I? I valant 0 au depart ?

  Haut de page Bas de page 
 
sandro



Autorisation : Membre
Nb de messages : 1366
Inscrit le : Ven 25 Mar 2011, 22:58
Posté le : Mar 10 Jan 2012, 20:35   Citer 

tout simplement car, si on numéraute les points de 0 à 100, il y en a 101.


Sinon, la commande for n'affecte pas ici la variable I, par contre elle est augmentée de 1 à chaque fois qu'on "fait un tour dans" (une itération de) la boucle.

Example :

Code
0 -> I
For(A,0,5,1
I+1 -> A
Disp A,I
End



Te donnera

première execution de la boucle (car 0 inférieur ou égal à 5)
0 (A)
1 (I)

2nde execution de la boucle (car 1 inférieur ou égal à 5)
1 (A)
2 (I)

3ème execution de la boucle (car 2 inférieur ou égal à 5)
2 (A)
3 (I)

4ème execution de la boucle (car 3 inférieur ou égal à 5)
3 (A)
4 (I)

5ème execution de la boucle (car 4 inférieur ou égal à 5)
4 (A)
5 (I)

6ème execution de la boucle (car 5 inférieur ou égal à 5)
5 (A)
6 (I)

Pas de 7ème car 6>5

Sandro

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



Publicité    



 
monsaibert
Invité
Posté le : Jeu 12 Jan 2012, 19:54   Citer 

merci Sandro,indiscutable.merci.

  Haut de page Bas de page 
 
Poster un nouveau sujet Poster une réponse





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