Forum

Catégorie : Programmes
Forum : Les programmes des internautes
Vues : 2687
Réponses : 15
Type : discussion
Etat : réponses autorisées

Programmes de SES

blg_flg le 03/09/2012 à 11:45
Salut à tous! bigmouth.gif

Aujourd'hui, je vous présente ce qui va être, à ma connaissance, les premiers programmes de SES du forum. Il devraient être les premiers d'une série plus longue, vu que je passe en 1° ES.
Je vous mets, pour le moment, quelques programmes utiles en seconde (et j'en ai d'autres en stock bigmouth.gif ).

Ils sont assez voire très court (pour le moment), mais ça devrait être utile à ceux qui ne veulent rien faire en éco, en 2°, mais qui veulent quand mêmes des bonnes notes. winkle.gif



Elasticité prix et revenu.

Code
:Input « DEMANDE DEPART : »,D
:Input « DEMANDE ARRIVE : »,E
:Menu(« ELASTICITE », « PRIX »,1, »REVENU »,2
:Lbl 1
:Input « PRIX DEPART :»,P
:Input « PRIX ARRIVE : »,Q
:(((E-D)/D)x100)/(((Q-P)/P)x100) -> X
:EffEcr
:Output(1,1, « ELASTICITE PRIX :
:Output(2,1, X
:Stop
:Lbl 2
:Input « REVENU DEPART : »,R
:Input « REVENU ARRIVEE : »,S
:Output(1,1,”ELASTICITE
:Output(2,1,”REVENU:
:Output(3,1, (((E-D)/D)x100)/(((S-R)/R)x100)



Taux de variation

Code
:Input “VALEUR DEPART:”,D
:Input “VALEUR D’ARRIVEE:”,A
:Output(6,1,”TAUX DE
:Output(7,1, « VARIATION :
:Output(8,1,((A-D)/D)x100
:Output(8,14, « °/.




Indice

Code
:1->A
:Menu(“INDICE DE BASE”,”1”,D,”100”,2,”1000”,3
:Goto D
:Lbl 2
:100->A
:Goto D
Lbl 3
:1000->A
:Lbl D
:Input « VALEUR DEPART : »,D
:Input « VALEUR ARRIVEE : »,F
:EffEcr
:Disp « INDICE : »,(F/O)xA




Donnée en valeur ou donnée en volume

Code
:EffEcr
: « DONNEE->Chaîne0
:1->B
:Menu(« INDICE DE BASE », « 1 »,3, « 100 »,1, « 1000 »,2
:Lbl 1
:100->B
:Goto 3
:Lbl 2
:1000->B
:Lbl 3
:Input « INDICE DES PRIX : »,I
:Menu(« CALCULER DONNEE », « EN VOLUME »,A, « EN VALEUR »,B
:Lbl A
:Disp Chaîne0
:Input « EN VALEUR :»,V
:Disp Chaîne0
:Disp « EN VOLUME :
:Disp (V/I)xB
:Stop
:Lbl B
:Disp Chaîne0
:Input « EN VOLUME : »,W
:Disp Chaîne0
:Disp « EN VALEUR :
:Disp (WxI)/B




Convertir un taux de variation (TDV) en coefficient multiplicateur (CM) et inversement

Code
:Menu("CONVERTIR","TDV>CM",A,"CM>TDV",B
:Lbl A
:Prompt "TDV: ",T
:Disp "CM=",1+.01T
:Lbl B
:Prompt "CM: ",C
:Disp "TDV= ",100(C-1)



Voici un lien pour certains de ces programmes: https://www.mediafire.com/?664[...]495m9ks5d582mp3 .





PS: Des optimisations sont possibles, notamment au niveau des calculs. Cependant, je les laisse ainsi, afin qu'on puisse s'y retrouver en faisant EDIT si le prof demande de détailler un peu plus et qu'on a pas appris son cours. happy.gif
tapenad le 03/09/2012 à 13:34
une petite optimisation de 7 octets ( j'ai pas pu résisté)



Indice

Code

:1->A
:Menu(“INDICE DE BASE”,”1”,D,”100”,2,”1000”,3
:Lbl 2
:100->A
:Goto D
Lbl 3
:1000->A
:Lbl D
:Input « VALEUR DEPART : »,D
:Input « VALEUR ARRIVEE : »,F
:EffEcr
:Disp « INDICE : »,FA/O

voila c'est pas grand chose mais c'est déja ça
blg_flg le 03/09/2012 à 16:58
En effet. Je corrige pour le début du code.

En revanche, pour le reste: voir le PS.
Samos le 03/09/2012 à 17:14
Code

Input "DEMANDE 0:",A
Input "DEMANDE 1:",B
Input "PRIX/REV 0:",C
Input "PRIX/REV 1:",D
(B/A-1)/(D/C-1

Pour l'elasticité
The K le 03/09/2012 à 18:22
Code
:Input « DEMANDE DEPART : »,D
:Input « DEMANDE ARRIVE : »,E
:Menu(« ELASTICITE », « PRIX »,1, »REVENU »,2
:Lbl 1
:Input « PRIX DEPART :»,P
:Input « PRIX ARRIVE : »,Q
:(((E-D)/D)x100)/(((Q-P)/P)x100) -> X
:EffEcr
:Output(1,1, « ELASTICITE PRIX :
:Output(2,1, X
:Stop
:Lbl 2
:Input « REVENU DEPART : »,R
:Input « REVENU ARRIVEE : »,S
:Output(1,1,”ELASTICITE
:Output(2,1,”REVENU:
:Output(3,1, (((E-D)/D)x100)/(((S-R)/R)x100)


Peut devenir :

Code

Input "DEMANDE DEPART :",D
Input "DEMANDE ARRIVEE:",E
Menu("ELASTICITE","PRIX",1,"REVENU",2
Lbl 1
"PRIX->Chaîne1
Lbl 2
If not(Chaîne1
"REVENU->Chaîne1
Disp Chaîne1+" DEPART
Input P
Disp Chaîne1+" ARRIVEE
Input Q
EffEcr
Disp "ELASTICITE :",Chaîne1
EffVar Chaîne1D(Q-P)/Q/(E-D


Je me demande si c'est la meilleure optimisation ou pas ...

Edit : corrigé ^^
Sangohan38 le 03/09/2012 à 18:32
Si je ne me trompe pas, à la seconde utilisation du programme, comme la chaîne 1 ne sera pas vide, cela n'ajoutera pas "REVENU" à la chaîne et l'affichage risque d'être chaotique si elle est déjà utilisée par un autre programme.

Sangohan38
The K le 03/09/2012 à 18:38
Code
EffVar Chaîne1.01D/(E-D


tongue.gif

Bon après ... oui si Str1 est souvent utilisée on remplace par Str8 enfin ... il doit bien y avoir moyen de s'arranger winkle.gif

j'ai pris Str1 par habitude.
ld le 04/09/2012 à 20:21
Bravo ! Très utile, fallait trouver, j'aime beaucoup !
Sangohan38 le 04/09/2012 à 23:46
TheK, dans ton optimisation tu peux encore gagner une dizaine d'octets:

Code
EffVar Chaîne1.01D/(E-D
Ans/(.01Q/(Q-P


Peut devenir:

Code
EffVar Chaîne1D(Q-P)/Q(E-D


Sangohan38
linkakro le 07/09/2012 à 23:56
C'est bien que les ES puissent eux aussi avoir des outils. happy.gif

Le programme d'élasticité a déjà été abordé donc ton projet n'est pas tout à fait le premier tongue.gif

sangohan38 : je ne suis pas sûr du tout que ce code soit fonctionnel : je crois qu'il manque une parenthèse. (Ou alors la ti82basique me réserve encore des surprises.)
EffVar Chaîne1D(Q-P)/(Q(E-D
Sangohan38 le 08/09/2012 à 08:58
Tu as raison Linkakro, j'ai effectivement oublié une parenthèse.Voila ma correction:

Code
EffVar Chaîne1D(Q-P)/Q/(E-D


Sangohan38
The K le 08/09/2012 à 09:44
Bien vu à vous deux winkle.gif
J'édite.
blg_flg le 19/11/2012 à 21:41
Un petit up (bon pas de rentrée mais presque), pour vous signaler l'ajout d'un programme, convertisseur de taux de variation en coefficient multiplicateur et inversement. winkle.gif

C'est pas très compliqué à faire, mais ça gagne quand même du temps. happy.gif
linkakro le 19/11/2012 à 21:52
Les opérations du convertisseur de TDV/CM ne sont pas réciproques.
1/100=.01, pas .001
Corrige l'un des deux, je ne sait pas lequel car je ne sais pas si ton taux est en pourcent ou en pourmille.

(remarquez vous autres que le sujet a été mis à jour au message précédent, ne passez pas votre chemin en pensant que le déterrage vient seulement de mon pointillisime)
blg_flg le 19/11/2012 à 22:02
Ah oui. Pardon. Une faute de frappe. J'ai édité. winkle.gif

Et désolé si le déterrage dérange certains. karate.gif
AlexRider38 le 20/11/2012 à 19:57
Ouais merci LeGrec glasses.gif . Ça me gave un peu la SES donc tes progs me seront utiles (dans la limite ou je connais mes leçons ^^)