Autorisation : Membre
Nb de messages : 149
Inscrit le : Jeu 13 Oct 2011, 15:48
Posté le : Mer 12 Sep 2012, 22:30
Bonjour, voici un programme que j'ai conçu qui résoud tout les probleme possible ou presque (enfin plutôt les calculs) en rapport avec les pourcentages. Il est assez amélioré (cependant les vétérans de la progra sur calcu auront vite fait de l'améliorer...). C'est mon chef-d'oeuvre -snif- (oui bon ok quand vus aurez vu le prgm vous allez vous foutre de ma gueule mais bon j'ais fait que 5 prgm à peu près intéressant donc voila...)
Bref, passons au choses sérieuses il s'appelle : POURCENT (vous pouvez bien sur le changer en n'importe quoi mais bon hein ça parrait le truc le plus évident) il fait 693 octets et je n'ai pas le câble donc si vous le voulez faudra le taper désolé...:
&=Thétâ
->=sto
Code
:Lbl M
:EffEcr
:Menu("(A/B)=(X/100)","X=?",1,"B=?",2,"A=?",3,"X+&/100",4,"X-&/100",5,"ORIGINE",6,"QUITTER",7
:Lbl 7 // il s'agit du Lbl Quitter donc rien de bien palpitant
:Stop
:Lbl 1 /* ici en revanche c'est plus interessant il s'agit de trouver a partir de deux nombre A et B , l'équivalent en pourcentage par exemple A=2 et B=10 X=20(pour 20%) */
:Disp "A/B = X/100
:Disp "A=PARTIE DU TOUT
:Disp "B=SOMME TOTALE
:Prompt A,B
:A*100/B->F
:Disp F
:Pause
:Goto M
:Lbl 2 /* Là dans le produit en croix A/B = X/100 on veut trouver le total B grâce aux valeurs A et X */
:Disp "A PARTIR D'UN
:Disp "NOMBRE A=X/100
:Disp "ON TROUVE
:Disp "LE TOTAL 'B'
:Prompt A,X
:A*100/X->U
:Disp U
:Pause
:Goto M
:Lbl 3
:Disp "SOIT X ET B
:Disp "A/B=X/100
:Prompt X,B
:B*X/100->B
:Disp B
:Pause
:Goto M
:Lbl 4 /* Cette fois-ci on change un peu on veut pour un nombre X donné on veut trouver la somme d'un de son propre pourcentage par exemple 10+50%=15 */
:Disp "X+&/100
:Prompt X,&
:X*(1+(&/100))->N
:Disp N
:Pause
:Goto M
:Lbl 5 /* ici c'est la même chose mais en soustraction */
:Disp "X-&/100
:Prompt X,&
:X*(1-(&/100))->G
:Disp G
:Pause
:Goto M
:Lbl 6 /* celui-ci est le + intéressant je trouve (et celui qui m'as le plus stimulé intellectuellement (oui vous vous en foutez...)). Donc il permet de retrouver le nombre X auquel on ajouté ou soustrais un pourcentage A (10% par exemple) et qui a donné le nombre B. On a besoin des valeur A et B. */
:Menu("ORIGINE","PLUS",A,"MOINS",B
:Lbl A // ici c'est pour les additions de %
:Disp "X=B/(1=A/100)
:Disp "X ETANT LE NBR
:Disp "A LE POURCENTAGE
:Disp "ET B LE NBR
:Disp "FINAL
:Prompt B,A
:B/(1+A/100)->X
:Disp X
:Pause
:Goto M
:Lbl B // ici c'ets pour les soustraction de %
:Disp "X=B/(1-A/100)
:Disp "X ETANT LE NBR
:Disp "D'ORIGINE
:Disp "A LE POURCENTAGE
:Disp "ET B LE NBR
:Disp "FINAL
:Prompt B,A
:B/(1-A/100)->X
:Disp X
:Pause
:Goto M
Voila, voila j'espère que ça vous sera utile, n'hésitez pas à me corriger et à me proposer de faire une amélioration que j'aurais oublier.
Autorisation : Membre
Nb de messages : 300
Inscrit le : Lun 14 Mai 2012, 18:51
Posté le : Jeu 13 Sep 2012, 17:59
Je ne suis pas expert mais j'ai vu quelques améliorations.
Code
While 1
EffEcr
Menu("(A/B)=(X/100)","X=?",1,"B=?",2,"A=?",3,"X+&/100",4,"ORIGINE",6,"QUITTER",7
j'ai supprimé X-& remplaçable par X+(-&)
Disp "A/B=X/100
Prompt A,B
Pause A/BE2 // E des exposants
End
Lbl 2
Prompt A,X
Pause A/XE2
End
Lbl 3
Prompt X,B
Pause BX E-2
End
Lbl 4
Prompt X,&
Pause X+X(&/100 // je n'ai pas très bien compris :X*(1=(&/100))->N
End
Lbl 6
Prompt B,A
Pause B/(1+A E-2
End
Lbl 7
Bon, je n'ai pas mis tous les texte, histoire de flemme
En faisant
Code
Pause "TEXTE"
Ou
Pause Variable
Tu peux mettre le programme sur pause tout en affichant.
Attention, ce n'est pas comme Disp tu peux uniquement afficher une seule chose à la fois.
While 1 remplace Lbl M
et
End à la fin de chaque Label
While = Tant que en français.
Tant qu'une condition est vraie(1 est interpreté comme une condition vraie), la boucle While va s'éxecuter, elle est délimitée par un End
à la fin de chaque label il y a un End donc le programme va revenir au While.
Il doit y avoir quelques autres améliorations que je n'ai pas vu
Autorisation : Membre
Nb de messages : 149
Inscrit le : Jeu 13 Oct 2011, 15:48
Posté le : Jeu 13 Sep 2012, 18:28
Oui je connait while etc... enrevanche le coup des exposant j'ai pas compris, tu met une variable sans valeur décidé?
Citer
je n'ai pas très bien compris :X*(1=(&/100))->N
bin c'est une technique pour aller vite pour faire 2+10% tu tape 2*1.10 et ça marche sinon pour 2-10% tu fais 2-10%=2*0.90%. Et ça marche très bien (c'était dans mon cours de seconde donc je pense que c'est pas super recherché comme méthode...)
Sinon je voie pas en quoi le while est mieux que le Lbl M et sinon vu que je pige rien a E je ne comprend pas tes calculs en plus mon prog a fondu et c'est que la moitié a peu près (bon y a pas le texte mais quand même et sinon oui je mets beaucoup de disp inutile et de précision mais ça m'aide ça me fait un pense bête)
Voila c'est tout (et puis merci quand même).
Autorisation : Membre
Nb de messages : 300
Inscrit le : Lun 14 Mai 2012, 18:51
Posté le : Jeu 13 Sep 2012, 18:40
While 1 et End prennent juste quelques octets en moins que Lbl M Goto M
le E s'obtient en faisant 2nd + ,
le moins qui suit le E est le petit moins à gauche de entrer
Tu dois le savoir mais E=*10^
donc E-2 = /100
Autorisation : Membre
Nb de messages : 149
Inscrit le : Jeu 13 Oct 2011, 15:48
Posté le : Jeu 13 Sep 2012, 18:45
Ah oui le E pour les puissance de dix... Bon sinon pour les gens qui veulent recopier le prgm vu qu'il prend moins d'octet autant prendre ta version mais pour ma part je me contenterait de mon humble petit prog de pépé.
Autorisation : Membre
Nb de messages : 3767
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Jeu 13 Sep 2012, 18:53
X*(1=(&/100))
semble être une faute de frappe : "=" au lieu de "+"
---------------------- 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)