Rechercher
Connexion
Chatbox externe
Derniers sujets
Partenaires
TI-Planet | Espace-TI : Forum |
Faire un don à Tout-82...
Où va cet argent ?
Membres donateurs:- Persalteas (10€)
- Wistaro (5€)
- jo2geek (22€)
Les posteurs les plus actifs du mois
Aucun utilisateur |
Utiliser ►Frac dans un programme
+2
m@thieu41
pito2901
6 participants
Tout 82 :: Programmes :: Les Programmes des Internautes (TI-Basic z80) :: Aide à la programmation (TI-Basic z80)
Page 1 sur 1
Utiliser ►Frac dans un programme
Bonjour à tous, j'ai créé ce pgrm (enfin je l'ai adapté pour la ti 82 stats) mais je n'arrive pas à faire afficher les résultats sous forme de fraction, j'ai tenté plusieurs manipulations avec ►Frac, mais cela ne marche pas, faut-il d'abord afficher le numérateur et ensuite le dénominateur ? Le programme sert à dire s'il y a des racines ou non sur un trinôme, combien il y en a et il les calcule.
- Code:
EffEcr
Input "A=",A
Input "B=",B
Input "C=",C
B²-4AC->D
EffEcr
If D>0
Then
(-B-racine(D)/(2A)->E
(-B+racine(D)/(2A)->F
Disp "LE TRINOME A","DEUX RACINES"
Output(3,1,"X1="
Output(3,4,E
Output(4,1,"X2="
Output(4,4,F
Else
If D=0
Then
-b/(2a)->G
Disp "LE TRINOME A","UNE RACINE"
Output(3,1,"X0="
Output(3,4,G
Else
Disp "LE TRINOME N'A","PAS DE RACINE"
End
End
Re: Utiliser ►Frac dans un programme
Bonjour,
Output ne gère pas la fonction >Frac (erreur syntaxe), il faut utiliser Disp.
Output ne gère pas la fonction >Frac (erreur syntaxe), il faut utiliser Disp.
- Code:
EffEcr
Input "A=",A
Input "B=",B
Input "C=",C
B²-4AC->D
EffEcr
If D>0
Then
(-B-racine(D)/(2A)->E
(-B+racine(D)/(2A)->F
Disp "LE TRINOME A","DEUX RACINES","X1=",E>Frac,"X2=",F>Frac //Ne marchera pas si le résultat contient une racine (sqrt(2)-1)/4 par ex ne pourra être fractionné
Else
If D=0
Then
-b/(2a)->G
Disp "LE TRINOME A","UNE RACINE","X0=",G>Frac //Marchera à tous les coups (ou presque)
Else
Disp "LE TRINOME N'A","PAS DE RACINE"
End
End
m@thieu41- ----------------------
- Messages : 939
Points Concours : 65
Productivité : 47
Date d'inscription : 02/06/2013
Localisation : Nice, France
Calculatrice(s) :- TI-82 Stats.fr
. :
Re: Utiliser ►Frac dans un programme
Et donc qu'est ce que je dois mettre pour que ça marche correctement ?m@thieu41 a écrit://Ne marchera pas si le résultat contient une racine
Re: Utiliser ►Frac dans un programme
Bah ça ne pourra jamais marcher car la calto ne sait pas gérer les racines.
Donc soit tu tombes sur la racine d'un carré parfait (genre sqrt(16)), et là elle y arrive, soit tu auras un résultat approché.
Donc soit tu tombes sur la racine d'un carré parfait (genre sqrt(16)), et là elle y arrive, soit tu auras un résultat approché.
m@thieu41- ----------------------
- Messages : 939
Points Concours : 65
Productivité : 47
Date d'inscription : 02/06/2013
Localisation : Nice, France
Calculatrice(s) :- TI-82 Stats.fr
. :
Re: Utiliser ►Frac dans un programme
Une Pause ou un Disp ou l'affichage automatique de fin de programme. Tu n'as pas le choix.
Text ne le supporte pas >Frac non-plus
Sauf si tu te compliques la vie avec le programme assembleur ZFRAC sur TIPlanet qui utilise les routines de TI puis rend le numérateur et le dénominateur dans des variables. Remarque : il est une routine de AutoClalc. (toujours sur TIPlanet)
Ou tu fais pareil en Basic mais tu perds en rapidité et place.
Mes programmes de la gamme RACCALC décomposent des racines avec des fraction. Mes je n'ai pas fusionné la somme avec les fractions.
http://tout82.free.fr/forum/sujet.php?sujet=2745
Pour afficher les zéros du polynôme, tu as intérêt à séparer les calculs et affichages en plusieurs parties si tu veux l'expression la moins approchée possible.
La TI30XBMultiview de mon IUT supporte les racines contrairement au MathPrint de 84plus.
Text ne le supporte pas >Frac non-plus
Sauf si tu te compliques la vie avec le programme assembleur ZFRAC sur TIPlanet qui utilise les routines de TI puis rend le numérateur et le dénominateur dans des variables. Remarque : il est une routine de AutoClalc. (toujours sur TIPlanet)
Ou tu fais pareil en Basic mais tu perds en rapidité et place.
Mes programmes de la gamme RACCALC décomposent des racines avec des fraction. Mes je n'ai pas fusionné la somme avec les fractions.
http://tout82.free.fr/forum/sujet.php?sujet=2745
Pour afficher les zéros du polynôme, tu as intérêt à séparer les calculs et affichages en plusieurs parties si tu veux l'expression la moins approchée possible.
La TI30XBMultiview de mon IUT supporte les racines contrairement au MathPrint de 84plus.
Linkakro- ----------------------
- Messages : 533
Points Concours : 55
Productivité : 31
Date d'inscription : 30/07/2013
Localisation : origine région centre, puis perpignan
Calculatrice(s) :- TI-82 Stats.fr
. :
Re: Utiliser ►Frac dans un programme
La TI30XBMultiview de mon IUT supporte les racines contrairement au MathPrint de 84plus.
C'est-à dire ??
Re: Utiliser ►Frac dans un programme
[fait sa pub ]Un problème avec un programme de math? Va donc voir mon tuto : https://tout82.forumactif.org/t74-tuto-programmer-des-programmes-mathematiques-simples [/fait sa pub ]
J'ai rien dit moi, je suis innocent...
ps : ah et puis sinon j'ai aussi fait un prog sur les polynômes...
Euh bin sinon tout est dit à part le fait que je suis d'accord avec persou pour : "La TI30XBMultiview de mon IUT supporte les racines contrairement au MathPrint de 84plus."
J'ai rien dit moi, je suis innocent...
ps : ah et puis sinon j'ai aussi fait un prog sur les polynômes...
Euh bin sinon tout est dit à part le fait que je suis d'accord avec persou pour : "La TI30XBMultiview de mon IUT supporte les racines contrairement au MathPrint de 84plus."
Re: Utiliser ►Frac dans un programme
Oups, j'aurais dû me taire plutôt que de provoquer cette dérive.
Je veux dire que l'affichage automatique noté "<>" de la ti30xbmultiview sait reconnaître certaines racines carrées et les afficher littéralement dans les résultats. De la même façon que les fractions.
Ainsi rac(12) pourra être affiché 2*rac(3) en résultat.
Cela me surprend puisque le mathprint a été quasiment copié d'une ti à l'autre, d'où ma remarque.
Je veux dire que l'affichage automatique noté "<>" de la ti30xbmultiview sait reconnaître certaines racines carrées et les afficher littéralement dans les résultats. De la même façon que les fractions.
Ainsi rac(12) pourra être affiché 2*rac(3) en résultat.
Cela me surprend puisque le mathprint a été quasiment copié d'une ti à l'autre, d'où ma remarque.
Linkakro- ----------------------
- Messages : 533
Points Concours : 55
Productivité : 31
Date d'inscription : 30/07/2013
Localisation : origine région centre, puis perpignan
Calculatrice(s) :- TI-82 Stats.fr
. :
Re: Utiliser ►Frac dans un programme
Ah bon! C'est trop bien. Mille fois mieux que : 3.464101615! Moi ce que je fais d'habitude c'est d'élever au carré mais si c'est un truc du genre 1 + rac(3) ça ne marche plus. Ce serait bien un truc qui gère les racines comme Frac gère les fraction.
Re: Utiliser ►Frac dans un programme
Il me semble que des prgm asm gèrent ce type d'affichage (à confirmer je ne suis sûr de rien). (Pas pour les X+rac(Y) par contre, mais je ne pense pas que ce soit réalisable sans que ça occupe trop d'octets, mais peut être que je me trompe...)
m@thieu41- ----------------------
- Messages : 939
Points Concours : 65
Productivité : 47
Date d'inscription : 02/06/2013
Localisation : Nice, France
Calculatrice(s) :- TI-82 Stats.fr
. :
Re: Utiliser ►Frac dans un programme
Le programme AutoCalc de Critor sur Ti-Planet fait déjà tout ça et plus.
(Basic+routines assembleur)
Mon RacCalc fait les fractions en produit avec racine nième et mon programme RacPlus fait les sommes d'un entier et d'une racine.
A voir aussi celui de sandro comme mon racplus, celui de coc5 (que je ne comprend pas et qui a des limites étranges et fait comme mon raccalc), et tous ceux que j'oubli en particulier la grande majorité qui fait comme mon racfrac. (ou dans l'autre sens on peut dire que mon racfrac fait comme eux )
(Basic+routines assembleur)
Mon RacCalc fait les fractions en produit avec racine nième et mon programme RacPlus fait les sommes d'un entier et d'une racine.
A voir aussi celui de sandro comme mon racplus, celui de coc5 (que je ne comprend pas et qui a des limites étranges et fait comme mon raccalc), et tous ceux que j'oubli en particulier la grande majorité qui fait comme mon racfrac. (ou dans l'autre sens on peut dire que mon racfrac fait comme eux )
Dernière édition par Linkakro le Jeu 3 Oct 2013 - 23:33, édité 1 fois
Linkakro- ----------------------
- Messages : 533
Points Concours : 55
Productivité : 31
Date d'inscription : 30/07/2013
Localisation : origine région centre, puis perpignan
Calculatrice(s) :- TI-82 Stats.fr
. :
Re: Utiliser ►Frac dans un programme
optimisation:
remplace:
remplace:
- Code:
input"A=",A
input"B=",B
input"C=",C
- Code:
prompt A,B,C
- Code:
(-B-racine(D)/(2A)->E
(-B+racine(D)/(2A)->F
Disp "LE TRINOME A","DEUX RACINES"
Output(3,1,"X1="
Output(3,4,E
Output(4,1,"X2="
Output(4,4,F
- Code:
disp "LE TRINOME A","DEUX RACINES",-B-racine(D)/2A,-B+racine(D)/2A
rpgcreator- Connaisseur
- Messages : 252
Points Concours : 27
Productivité : 6
Date d'inscription : 16/09/2013
Localisation : Vernouillet 28
Calculatrice(s) :- TI-82 Stats.fr
. :
Re: Utiliser ►Frac dans un programme
Je suis d'accord pour la première optimisation, mais la seconde est fausse:
-B+racine(D)/2A != -B+racine(D)/(2A
En effet, pour la calto
-B+racine(D)/2A = -B+racine(D)/2 * A
Donc ça ne va pas.
Mais après c'est sûr que le code mérite pas mal d'optimisations.
Voilà ce que j'obtient:
-B+racine(D)/2A != -B+racine(D)/(2A
En effet, pour la calto
-B+racine(D)/2A = -B+racine(D)/2 * A
Donc ça ne va pas.
- Code:
2A
disp "LE TRINOME A","DEUX RACINES",-B-racine(D)/Rép,-B+racine(D)/Rép
Mais après c'est sûr que le code mérite pas mal d'optimisations.
Voilà ce que j'obtient:
- Code:
Disp "AX²+BX+C
Prompt A,B,C
B²-4AC->D
(Rép>0)+(Rép>=0
Disp "IL Y A "+sousChaine("012",Rép+1,1)+" RACINES
If Rép
suite(.5(-B+Crac(D))A^-1>Frac,C,1-Rép,1,2 //A-1 c'est A puissance -1 (à gauche de la touche sin) // >Frac, à saisir en une fois, se trouve dans le menu math //Edit: petite erreur en recopiant: c'est 1-Rép et non pas Rép-1 //Edit2: Rajout du symbole puissance après la remarque de Linka plus bas
Dernière édition par m@thieu41 le Sam 5 Oct 2013 - 17:06, édité 2 fois
m@thieu41- ----------------------
- Messages : 939
Points Concours : 65
Productivité : 47
Date d'inscription : 02/06/2013
Localisation : Nice, France
Calculatrice(s) :- TI-82 Stats.fr
. :
Re: Utiliser ►Frac dans un programme
La TI82 NON-Stat ne suit pas la même priorité de calcul des multiplications implicites. Cela explique que des "/2A" trainent sur le forum.
Ti82 : Z/2A supporté
Ti82stats : Z/(2A nécessaire
Certes tu as optimisé à mort. Bien joué.
Mais je trouve ça bien compliqué pour le besoin.
Et puis un détail.
suite(.5(-B-rac(DC))A-1,C,1-Rép,1,2 // 20 octets
.5A^-1suite(-B-rac(DC),C,1-Rép,1,2 // 18 octets
Quand tu veux désigner "^-1" il vaut mieux écrire clairement le symbole puissance, puis commenter à propos de la touche. Je préfère avoir le code idéal puis l'optimisation plutôt que de devoir suivre un commentaire pour comprendre ce que j'avais compris de travers.
EDIT : message corrigé suite à un erratum de m@thieu41 et sa correction dans tous ses propres messages. Le 1-Rép,1 était désordonné.
Ti82 : Z/2A supporté
Ti82stats : Z/(2A nécessaire
Certes tu as optimisé à mort. Bien joué.
Mais je trouve ça bien compliqué pour le besoin.
Et puis un détail.
suite(.5(-B-rac(DC))A-1,C,1-Rép,1,2 // 20 octets
.5A^-1suite(-B-rac(DC),C,1-Rép,1,2 // 18 octets
Quand tu veux désigner "^-1" il vaut mieux écrire clairement le symbole puissance, puis commenter à propos de la touche. Je préfère avoir le code idéal puis l'optimisation plutôt que de devoir suivre un commentaire pour comprendre ce que j'avais compris de travers.
EDIT : message corrigé suite à un erratum de m@thieu41 et sa correction dans tous ses propres messages. Le 1-Rép,1 était désordonné.
Dernière édition par Linkakro le Lun 7 Oct 2013 - 0:42, édité 1 fois
Linkakro- ----------------------
- Messages : 533
Points Concours : 55
Productivité : 31
Date d'inscription : 30/07/2013
Localisation : origine région centre, puis perpignan
Calculatrice(s) :- TI-82 Stats.fr
. :
Re: Utiliser ►Frac dans un programme
Tu m'as toujours sur des détails comme ça .
m@thieu41- ----------------------
- Messages : 939
Points Concours : 65
Productivité : 47
Date d'inscription : 02/06/2013
Localisation : Nice, France
Calculatrice(s) :- TI-82 Stats.fr
. :
Re: Utiliser ►Frac dans un programme
J'avais fait une petite erreur en recopiant: c'est 1-Rép et non pas Rép-1 dans: suite(.5(-B+Crac(D))A^-1>Frac,C,1-Rép,1,2
m@thieu41- ----------------------
- Messages : 939
Points Concours : 65
Productivité : 47
Date d'inscription : 02/06/2013
Localisation : Nice, France
Calculatrice(s) :- TI-82 Stats.fr
. :
Sujets similaires
» Entrer une fonction dans un programme
» Utiliser l'émulateur Wabbitemu
» comment utiliser wabbitds sur une nintendo ds?
» Programme qui résout des équations
» Programme de Cryptographie
» Utiliser l'émulateur Wabbitemu
» comment utiliser wabbitds sur une nintendo ds?
» Programme qui résout des équations
» Programme de Cryptographie
Tout 82 :: Programmes :: Les Programmes des Internautes (TI-Basic z80) :: Aide à la programmation (TI-Basic z80)
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum
Dim 16 Oct 2022 - 21:11 par Wistaro
» Bonne année 2018!
Ven 2 Nov 2018 - 19:42 par Ti64CLi++
» Lancement du TI-Concours 2017 !
Sam 20 Mai 2017 - 0:27 par Paulo1026
» Chaînes Youtube des membres
Ven 19 Mai 2017 - 22:41 par Wistaro
» cacul du taux d'intêret
Ven 24 Mar 2017 - 21:50 par m@thieu41
» [Projet] Un mario by tout82
Dim 29 Jan 2017 - 14:09 par Wistaro
» Cherche documentation assembleur TI82stat
Mer 25 Jan 2017 - 12:29 par Ti64CLi++
» Probleme Ti-82 Stats fr
Jeu 12 Jan 2017 - 13:56 par Ti64CLi++
» ROM 82 stats.fr
Jeu 15 Déc 2016 - 10:24 par Ti64CLi++