Rechercher
 
 

Résultats par :
 


Rechercher Recherche avancée

Connexion

Récupérer mon mot de passe

Chatbox externe


Derniers sujets
» [JEU] Mon voisin du dessous
Mar 10 Oct 2017 - 19:42 par Wistaro

» 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++

» flappy bird
Jeu 15 Déc 2016 - 10:23 par Ti64CLi++

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


[Projet] Solveur d'équations de 1er degré sans solve() - TIbasic z80

Page 1 sur 2 1, 2  Suivant

Voir le sujet précédent Voir le sujet suivant Aller en bas

[Projet] Solveur d'équations de 1er degré sans solve() - TIbasic z80

Message par Wistaro le Dim 6 Juil 2014 - 18:26

Et bonjour à tous!

Aujourd'hui je vous présente mon nouveau projet, il s'agit d'un solveur d'équations de type linéaire (1er degré)  et entièrement en TIbasic z80.

~ Avant propos ~

Je tiens à préciser que j'ignore totalement si le projet a déjà été réalisé. Mon programme ne se base sur aucun autre programme ou projet. De plus, même si mon programme n'est pas terrible (à vous d'en juger), merci de respecter le travail effectué et de ne pas partager ou vous approprier le programme sans mon autorisation. Merci.

~ Présentation globale ~

La première chose que vous devez vous dire, c'est pourquoi développer un resolveur d'équations car la calculatrice en a déjà un, la fonction solve()? Et bien, pour plusieurs raisons :
- Elle ne résout que si l'équation est nulle, autrement dit, par exemple : 3X+2=0. Elle ne résout pas: 3X=-2. C'est bête, mais peux pratique dans certaines longues équations. Il faut tout transposer, c'est long et pas vraiment bénéfique au final.
- Le résultat ne s'affiche pas sous sa forme exacte, alors que mon programme affiche le nombre fractionnaire le plus proche de la solution!
Voilà en gros pourquoi ignorer, pour le moment, le solveur d'équation intégré à votre calculatrice.

Mais ce programme est également là pour

~ Fonctionnalités du programme ~

Le programme sera compatible pour toutes les calculatrices z80, incluant la TI82/STAT/FR. (pas sûr à 100%, mais très probable). Il est codé en TIbasic z80, sans bibliothèque externe.

Il sera capable de résoudre une équation comme celle-ci:

3X+3*2+(1/2)X - 13*24X = 10X - 3 +0,2683X
Ceci est à titre d'exemple.

En revanche, il sera incapable de résoudre une équation contenant :
- Des X sous une racine
- Des X élevés à une puissance > 1 (appartenant aux entiers naturels)
- Des X dans une fraction : 2/3X sera calculé comme (2/3)X. Le programme est amené à évoluer pour ignorer ce genre de problèmes.

~ Fonctionnement & Explications ~

Le fonctionnement est simple:
Partons de l'équation: 10X = 5X+2

- Je sépare les 2 parties de l'équation pour les traiter séparément.
Nous avons donc: 10X et 5X+2

- Ensuite, je recherche dans la chaîne 10X, puis dans 5X+2 si il y a un X.
C'est le cas dans 10X.

- Ensuite, je cherche dans la chaîne, en partant cette fois ci du X vers la droite de la chaîne, vers sa base un "+" ou un "-", ou l'origine du la chaîne. Je trouve un nombre qui se situe "entre les deux".
Dans notre exemple, on trouve 10 et 5 .

Je stock ces résultats.

- Ensuite, dans chaque partie, je stocke 0 à X et  j'utilise la fonction expr() pour donner le résultat de la partie. En fait, cela me donne le nombre de chiffre "autre que des X".

- Enfin, une simple transposition des X/chiffre d'un côté à l'autre et je finis par trouver un résultats sous forme d'une fraction exacte (non simplifiée pou l'instant)

- Pour afficher le "trait de fraction", je recherche le plus grand nombre de la fraction (si il y en a un de négatif, je le passe positif) , et je met autant de trait de fraction que ce nombre comporte d'unités. C'est du pure détail anecdotique.



~ Screenshoot (v1.2)~



~ Code source ~
v1.2 (dernière):

:DelVar XDelVar L26→dim(L2
:1C
:ClrHome
:Output(4,1,"EQUATION SOLVER
:Output(5,1,"v1.2 - Wistaro
:For(A,1,16
: Output(6,A,"+
: Output(3,A,"+
:End
:Lbl 1
:DelVar L1
:Input "?>",Str1
:ClrHome
:Disp "PLEASE WAIT...
:Str1Str9
:length(Str9L
:inString(Str9,"="P
:If not(P:Goto 1
:Lbl 9
:Str9Str1
:If C=1:Then
: sub(Str9,1,P-1Str1
: length(Str1V
: expr(Str1L2(C+2
:End
:If C=2:Then
: inString(Str9,"=")→P
: sub(Str9,P+1,length(Str9)-PStr1
: length(Str1V
: expr(Str1L2(C+2
:End
:If not(inString(Str1,"X"):Then
: {0}→L1
: Goto 6
:End
:1T
:Lbl 5
:length(Str1V
:If inString(Str1,"X":Then
: inString(Str1,"X"A
: Repeat Str3="+" or Str3="-" or A=1
: If A>1:A-1A
: sub(Str1,A,1)→Str3
: End
: If A=1:sub(Str1,1,inString(Str1,"X")-AStr4
: If A>1:sub(Str1,A+1,inString(Str1,"X")-(A+1)→Str4
:End
:T→dim(L1
:sub(Str4,1,1
:If Ans="+" or Ans="-" or Ans="*" or Ans="/":sub(Str4,2,length(Str4)-A)→Str4
:expr(Str4L1(T
:inString(Str1,"X"P
:If V-P:Then
: inString(sub(Str1,P+1,V-P),"X")→Q:Else:Goto 6:End
:If V>P and Q
:Then
: sub(Str1,P+1,V-P)→Str1
: T+1T
: Goto 5
:End
:Lbl 6:ClrHome
:ClrDraw
:DelVar Esum(L1L2(C
:If C=1:Then
: 2C:Goto 9
:End
:L2(1)-L2(2A
:L2(4)-L2(3B
:If A<0:Then
: AA:BB:End
:ClrHome
:DelVar Y1
:Text(0,0,Str9
:Text(7,0,"<=> ",L2(1),"X+",L2(3),"=",L2(2),"X+",L2(4
:Text(14,0,"<=> ",A,"X+",L2(3),"=",L2(4)
:Text(21,0,"<=> ",A,"X=",B
:If not(A:Goto 8
:Text(30,0,"<=> X="
:If not(fPart(B/A:Then
: Text(47,0,B/A
:Else
: If not(fPart(A) and not(fPart(B):Then
: If A<0:Then:AF:Else:AF:End
: If B<0:Then:BG:Else:BG:End
: A/gcd(F,G)→A
: B/gcd(F,G)→B
: End
: Text(40,0,B
: Text(54,0,A
: StorePic 1
: If A<0:Then:AA:1E:End
: If B<0:Then:BB:1E:End
: max({A,BM
: {0,1L1:{0,ML2
: LinReg(ax+b)L1,L2,Y1
: Equ►String(Y1,Str1
: sub(Str1,1,length(Str1)-3Str1
: DelVar Y1
: For(D,0,length(Str1)+E
: Text(47,3D,"-
: End
: RecallPic 1
:End
:Pause :ClrDraw
:Disp "
:Stop
:Lbl 8
:Text(30,0,"S= <ensemble vide>
:Pause




v0.1a:
:DelVar XDelVar L24→dim(L2
:1C
:ClrHome
:Output(4,1,"EQUATION SOLVER
:Output(5,1,"v0.1a - Wistaro
:For(A,1,16
: Output(6,A,"+
: Output(3,A,"+
:End
:Lbl 1
:DelVar L1
:Input "?>",Str1
:ClrHome
:Disp "PLEASE WAIT...
:Str1Str9
:length(Str9L
:inString(Str9,"="P
:If not(P:Goto 1
:Lbl 9
:Str9Str1
:If C=1:Then
: sub(Str9,1,P-1Str1
: length(Str1V
: expr(Str1L2(C+2
:End
:If C=2:Then
: inString(Str9,"=")→P
: sub(Str9,P+1,length(Str9)-PStr1
: length(Str1V
: expr(Str1L2(C+2
:End
:If not(inString(Str1,"X"):Then
: {0}→L1
: Goto 6
:End
:1T
:Lbl 5
:length(Str1V
:If inString(Str1,"X":Then
: inString(Str1,"X"A
: Repeat Str3="+" or Str3="-" or A=1
: If A>1:A-1A
: sub(Str1,A,1)→Str3
: End
: If A=1:sub(Str1,1,inString(Str1,"X")-AStr4
: If A>1:sub(Str1,A+1,inString(Str1,"X")-(A+1)→Str4
:End
:T→dim(L1
:sub(Str4,1,1
:If Ans="+" or Ans="-" or Ans="*" or Ans="/":sub(Str4,2,length(Str4)-A)→Str4
:expr(Str4L1(T
:inString(Str1,"X"P
:If V-P:Then
: inString(sub(Str1,P+1,V-P),"X")→Q:Else:Goto 6:End
:If V>P and Q
:Then
: sub(Str1,P+1,V-P)→Str1
: T+1T
: Goto 5
:End
:Lbl 6:ClrHome
:sum(L1L2(C
:If C=1:Then
: 2C:Goto 9
:End
:L2(1)-L2(2A
:L2(4)-L2(3B
:If not(A:Then
: AA:BB:End
:ClrHome
:Output(1,1,"Resultat:
:Output(2,1,"X=
:Output(4,1,B
:Output(6,1,A
:If A<0:AA
:If B<0:BB
:max({A,BM
:{0,1L1:{0,ML2
:LinReg(ax+b)L1,L2,Y1
:Equ►String(Y1,Str1
:sub(Str1,1,length(Str1)-3Str1
:For(D,1,length(Str1
: Output(5,D,"-
:End
:Pause


~ Annexe ~

L'équation doit respecter le règles suivantes:
- Si il y a un X tout seul, il doit s'écrire "1X" et pas "X"
- Il faut mettre "+ - X" et pas "-x" sauf en début de terme.


Je tiens à préciser que ce programme est à l'état de projet, et il n'est pas nécessairement voué à être abouti, si il est parfaitement inutile. De plus, je pense pouvoir réussir à traiter les "pie" et "racines" comme eux-même, c'est à dire qu'ils pourront apparaître comme tel, simplifié dans le résultat, ce qui serait déja un gros avantage. De plus, comme vous pouvez le voir, la fraction donnée n'est pas simplifié, et le programme devra par la suite effectuer cette simplification (j'y travaille actuellement)  


Dernière édition par Wistaro le Mer 16 Juil 2014 - 9:41, édité 8 fois

__________________________________________________________________________
Clique ici pour retrouver tout mes programmes en TIbasic

Tu es curieux, Invité? Alors clique ici:


Coucou Invité !Ta dernière visite sur ce forum date de . Tu as posté un total de 78 message(s) sur Tout 82 et enfin, tu as 0 ans.
Si nous sommes le 0, je te souhaite un joyeux anniversaire ;-)

avatar
Wistaro
Passioné
Passioné

Messages : 910
Points Concours : 86
Productivité : 28
Date d'inscription : 16/06/2013
Localisation : Tarbes - DUT GEII
Calculatrice(s) :
  • TI-82
  • TI-82 Stats
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Voir le profil de l'utilisateur http://www.youtube.com/user/Wistaro

Revenir en haut Aller en bas

Re: [Projet] Solveur d'équations de 1er degré sans solve() - TIbasic z80

Message par Linkakro le Dim 6 Juil 2014 - 19:20

Dès la ti82stats il y a ceci qui marche très bien et simplement. (avec le nombre i imaginaire en place de l'inconnue). Programme MiniSolv
Mais puisque tu veux travailler autrement, alors ton programme aura l'avantage de la compatibilité contrairement à MiniSolv.

Wistaro a écrit:En écrivant ce topic, je me suis aperçu d'une erreur. Je la corrige donc et je post le programme demain dans la matinée. Merci de votre compréhension
~ Fonctionnement & Explications ~
~ Screenshoot ~
~ Code source ~
Tant pis, j'attend tant qu'il faudra, ce n'est pas comme si nous pouvions le faire pour toi.

A quel point ton programme sera-t-il plus réussi que les solutions approchées par le solveur de dichotomie de la calculatrice ?
Si tu obtiens une valeur approchée alors tu n'auras gagné que la précision des calculs par rapport à la dichotomie.
Si tu affiches la solution littérale sans effectuer l'application numérique, alors ce sera plus précis sur tous les aspects.

Parmi les avantages que tu escomptes, celui de la saisie de l'équation à zéro est, dès la ti82stats, facile à contourner seulement avec deux saisies.
Code:
Input " ",Str1
input "=",Str2
solve(expr(Str1)-expr(Str2),X,1

Wistaro a écrit:En revanche, il sera incapable de résoudre une équation contenant :
- Des X sous une racine
- Des X élevés à une puissance > 1 (appartenant aux entiers naturels)
- Des X dans une fraction : 2/3X sera calculé comme (2/3)X. Le programme est amené à évoluer pour ignorer ce genre de problèmes.
Dis que X ne supporte que le produit par un réel et ce sera suffisant.
"Dans une fraction" : dénominateur sera plus précis.

EDIT : et de toute manière tu écris ton dénominateur sans parenthèse donc c'est ambigu.
saisie 2/3X
ti82 2/(3*X)
ti83 (2/3)*X


Dernière édition par Linkakro le Lun 7 Juil 2014 - 0:05, édité 1 fois

__________________________________________________________________________
Vétéran du TI-Basic Zilog80. Ti82statfr sur Tout82 depuis 2009 et ti84pocketfr depuis noël 2012. Ti83plusfrUSB (été 2014, concours tiplanet suite du geek). Bidouille un peu d'assembleur Z80.
Incappable de gérer le temps et manque de tact, plutôt serviable.
Je prend les commandes de programme. Je suis motivé par les maths et la physique tant que ce n'est pas une simple copie d'antisèche.
Vous pouvez trouver une grande partie de mes données hébergées dans mon mediafire. Le ZIP et la liste sont périmées depuis longtemps.
coucou Invité What a Face
avatar
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

. : TI-82 Stats.fr

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: [Projet] Solveur d'équations de 1er degré sans solve() - TIbasic z80

Message par m@thieu41 le Dim 6 Juil 2014 - 23:50

Je ne sais pas trop comment tu gères ça... Mais je vois d'une façon toute bête:
Si on a une équation du premier degré, il n'y a qu'une solution. Donc on peut utiliser le solveur, qui donne un résultat précis autant que faire se peut sur la calto.

Je propose une seule saisie : "A=B", avec A et B exprimé en fonction de X, inconnue du premier degré.
Il faut donc isoler A et B, puis utiliser la même méthode que proposée par Linka.

Code:
Input " ",Str1
inString(Str1,"=  //Recherche de la position du "="
solve(expr(sub(Str1,1,Ans-1))-expr(sub(Str1,Ans+1,lenght(Str1)-Ans)),X,1>Frac //recherche de la solution (en utilisant "A-B=0"), puis affichage en fractionné

__________________________________________________________________________
ZSNAKE Mon premier (et unique) jeu en ASM:
Un Snake 2 joueurs (2caltos)
-> Je travaille sur une version plus stable du jeu, je poste dès que possible.
avatar
m@thieu41
----------------------
----------------------

Messages : 934
Points Concours : 65
Productivité : 47
Date d'inscription : 02/06/2013
Localisation : Nice, France
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: [Projet] Solveur d'équations de 1er degré sans solve() - TIbasic z80

Message par rpgcreator le Lun 7 Juil 2014 - 5:31

Sinon le cerveau aussi ça marche Very Happy Razz
Avantages :
-Pas besoin de se hum hum hum pour un programme qui pourrait foirer un contrôle Smile
-Des kilo-octets de libre dans notre chère 82stats (hé oui Razz)
-Et enfin beaucoup plus rapide avec un peu de logique (même si le ne connais pas le temps que ça prend pour calculer XD ça ne peut pas être aussi lent que tracer 1 frame de flight simulator mais quand même hihi) Smile Very Happy
Ceux qui en ont besoin peuvent rajouter un gros ventirad et un ventilo de CPU sur le crâne  pour éviter la surchauffe Very Happy Very Happy Very Happy Very Happy Very Happy

__________________________________________________________________________
troll!!!
je prefere la ti-82stats a la fumette Razz

ET VOUS ?

Je travaille en ce moment sur une adaptation de pokémon donjon mystère en ti-basic sur 82stats. J'ai fini la première version du jeu que je posterais prochainement !!!!!!!!!!
En attendant, viens voir mes RPG supra légers en ti-basic pour ti-82stats:

http://www.tout82.org/t87-rpg82-iii-world-war-z
http://www.tout82.org/t75-skyrim-ii-modern-warfare
http://www.tout82.org/t78-rpg82-deluxe

avatar
rpgcreator
Connaisseur
Connaisseur

Messages : 252
Points Concours : 27
Productivité : 6
Date d'inscription : 16/09/2013
Localisation : Vernouillet 28
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: [Projet] Solveur d'équations de 1er degré sans solve() - TIbasic z80

Message par Wistaro le Lun 7 Juil 2014 - 11:01

Topic mit à jour, avec le code, et les explications détaillées. N'oubliez pas de regarder la partie "annexe"

__________________________________________________________________________
Clique ici pour retrouver tout mes programmes en TIbasic

Tu es curieux, Invité? Alors clique ici:


Coucou Invité !Ta dernière visite sur ce forum date de . Tu as posté un total de 78 message(s) sur Tout 82 et enfin, tu as 0 ans.
Si nous sommes le 0, je te souhaite un joyeux anniversaire ;-)

avatar
Wistaro
Passioné
Passioné

Messages : 910
Points Concours : 86
Productivité : 28
Date d'inscription : 16/06/2013
Localisation : Tarbes - DUT GEII
Calculatrice(s) :
  • TI-82
  • TI-82 Stats
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Voir le profil de l'utilisateur http://www.youtube.com/user/Wistaro

Revenir en haut Aller en bas

Re: [Projet] Solveur d'équations de 1er degré sans solve() - TIbasic z80

Message par m@thieu41 le Lun 7 Juil 2014 - 12:36

- Pour afficher le "trait de fraction", je recherche le plus grand nombre de la fraction (si il y en a un de négatif, je le passe positif) , et je met autant de trait de fraction que ce nombre comporte d'unités.
De chiffres tu veux dire? :P

Il serait judicieux de prendre en compte qu'un nombre négatif contient un caractère en plus Wink

Si tu es sur que le nombre testé en non nul, et positif, tu peux utiliser la fonction log pour trouver son nombre de chiffres:
"1+int(log(X" renvoi le nombre de chiffres de X, si X est un entier naturel non nul.

__________________________________________________________________________
ZSNAKE Mon premier (et unique) jeu en ASM:
Un Snake 2 joueurs (2caltos)
-> Je travaille sur une version plus stable du jeu, je poste dès que possible.
avatar
m@thieu41
----------------------
----------------------

Messages : 934
Points Concours : 65
Productivité : 47
Date d'inscription : 02/06/2013
Localisation : Nice, France
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: [Projet] Solveur d'équations de 1er degré sans solve() - TIbasic z80

Message par Wistaro le Lun 7 Juil 2014 - 13:15

Merci, je n'ai pas encore abordé les logarithmique en cours Razz C'est mieux que de passer par conversions nombre → chaîne → lenght().Et oui jre parle bien de chiffres.

Pour l'instant, mon algo ne présente pas grand intérêt par rapport à la fonction solve().
Si j'arrive à effectuer les manipulations ci-dessous, là, sa deviendra très utile!

- Simplification de la fraction finale
- Affichage de pie/racine dans le résultat final + simplification
- Reconnaissance du 2nd degré et solveur d'équation, dans ce cas, avec discriminant.
- Choix de l'affichage du résultat: exacte ou approché

__________________________________________________________________________
Clique ici pour retrouver tout mes programmes en TIbasic

Tu es curieux, Invité? Alors clique ici:


Coucou Invité !Ta dernière visite sur ce forum date de . Tu as posté un total de 78 message(s) sur Tout 82 et enfin, tu as 0 ans.
Si nous sommes le 0, je te souhaite un joyeux anniversaire ;-)

avatar
Wistaro
Passioné
Passioné

Messages : 910
Points Concours : 86
Productivité : 28
Date d'inscription : 16/06/2013
Localisation : Tarbes - DUT GEII
Calculatrice(s) :
  • TI-82
  • TI-82 Stats
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Voir le profil de l'utilisateur http://www.youtube.com/user/Wistaro

Revenir en haut Aller en bas

Re: [Projet] Solveur d'équations de 1er degré sans solve() - TIbasic z80

Message par m@thieu41 le Lun 7 Juil 2014 - 13:25

J'ai survolé (et encore Razz) les logarithmes en cours, et on ne m'a jamais parlé de cette application forte utile x). En fait je l'ai découverte comme toi sur le fofo Wink

C'est sur que si tu arrives à traiter les pi/e/racines ça peut devenir intéressant Smile
Et encore plus si tu arrives à distinguer et résoudre le second degrés.

Continue comme ça alors Smile

__________________________________________________________________________
ZSNAKE Mon premier (et unique) jeu en ASM:
Un Snake 2 joueurs (2caltos)
-> Je travaille sur une version plus stable du jeu, je poste dès que possible.
avatar
m@thieu41
----------------------
----------------------

Messages : 934
Points Concours : 65
Productivité : 47
Date d'inscription : 02/06/2013
Localisation : Nice, France
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: [Projet] Solveur d'équations de 1er degré sans solve() - TIbasic z80

Message par Wistaro le Lun 7 Juil 2014 - 13:33

Pour le second degré, c'est faisable, je pense:
- Je fait une reconnaissance des X.
- Si je trouve le terme "^", alors je c'est qu'il y a du 2d degré
- Ou si X est multiplié par un autre "X".
Dans ce cas, mon programme tourne normalement, il simplifie tout d'un coté (en isolant bien les X^). Puis une autre recherche de chaîne pour trouver a/b/c et c'est bon.

Mais c'est facile à dire comme sa :p

Pour traiter les pie/racine, j'ai une idée, mais il faut que je la teste avant.

__________________________________________________________________________
Clique ici pour retrouver tout mes programmes en TIbasic

Tu es curieux, Invité? Alors clique ici:


Coucou Invité !Ta dernière visite sur ce forum date de . Tu as posté un total de 78 message(s) sur Tout 82 et enfin, tu as 0 ans.
Si nous sommes le 0, je te souhaite un joyeux anniversaire ;-)

avatar
Wistaro
Passioné
Passioné

Messages : 910
Points Concours : 86
Productivité : 28
Date d'inscription : 16/06/2013
Localisation : Tarbes - DUT GEII
Calculatrice(s) :
  • TI-82
  • TI-82 Stats
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Voir le profil de l'utilisateur http://www.youtube.com/user/Wistaro

Revenir en haut Aller en bas

Re: [Projet] Solveur d'équations de 1er degré sans solve() - TIbasic z80

Message par m@thieu41 le Lun 7 Juil 2014 - 13:42

Second degré c'est plutôt les X² qu'il faut isoler Smile

Oui c'est faisable, après reste à voir si c'est pas trop lourd à faire.

__________________________________________________________________________
ZSNAKE Mon premier (et unique) jeu en ASM:
Un Snake 2 joueurs (2caltos)
-> Je travaille sur une version plus stable du jeu, je poste dès que possible.
avatar
m@thieu41
----------------------
----------------------

Messages : 934
Points Concours : 65
Productivité : 47
Date d'inscription : 02/06/2013
Localisation : Nice, France
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: [Projet] Solveur d'équations de 1er degré sans solve() - TIbasic z80

Message par Wistaro le Lun 7 Juil 2014 - 14:33

Faut voir. Je ne pense pas que cela soit exsessif,

__________________________________________________________________________
Clique ici pour retrouver tout mes programmes en TIbasic

Tu es curieux, Invité? Alors clique ici:


Coucou Invité !Ta dernière visite sur ce forum date de . Tu as posté un total de 78 message(s) sur Tout 82 et enfin, tu as 0 ans.
Si nous sommes le 0, je te souhaite un joyeux anniversaire ;-)

avatar
Wistaro
Passioné
Passioné

Messages : 910
Points Concours : 86
Productivité : 28
Date d'inscription : 16/06/2013
Localisation : Tarbes - DUT GEII
Calculatrice(s) :
  • TI-82
  • TI-82 Stats
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Voir le profil de l'utilisateur http://www.youtube.com/user/Wistaro

Revenir en haut Aller en bas

Re: [Projet] Solveur d'équations de 1er degré sans solve() - TIbasic z80

Message par Linkakro le Lun 7 Juil 2014 - 20:02

Persalteas a détecté toutes sortes de syntaxes dans son programme de dérivation. ("EasyF'(X)" ou EASYFX, disponible sur TI-Planet et forums tout82/espace-ti). Tu peux t'inspirer de son moteur de lecture et réaliser ton propre moteur de traitement. Donc non les puissances ne sont pas forcément excessives.
Je ne te conseille pas de t'inspirer de mon équilibreur chimique stoechiométrique car son moteur est compliqué, de plusieurs versions, et n'est pas du tout prévu pour détecter des puissances en suffixes.

(Mais mon humble avis est que tout ceci est un gaspillage d'efforts.)

On ne dit pas "les logarithmiques" mais "les logarithmes".
Trois formules résument tout. Faut pas s'inquiéter.
Le logarithme décimal Y=log(X) est la réciproque de 10^Y=X. On trouve donc l'exposant, et on en déduit le nombre de chiffres.

On n'écrit pas "lenght" mais "length".

Je constate que tu fais tout avec une interprétation de chaînes de caractères. Donc ce n'est compatible qu'à partir de la ti82stats. Cela change mon approche.
Ton but des solutions littérales donnent un intérêt important pour la technique. Mais je ne suis pas adepte pour autant.

Je pense improviser un moteur réalisant ton objectif pour m'entraîner.


Dernière édition par Linkakro le Mar 8 Juil 2014 - 20:12, édité 1 fois

__________________________________________________________________________
Vétéran du TI-Basic Zilog80. Ti82statfr sur Tout82 depuis 2009 et ti84pocketfr depuis noël 2012. Ti83plusfrUSB (été 2014, concours tiplanet suite du geek). Bidouille un peu d'assembleur Z80.
Incappable de gérer le temps et manque de tact, plutôt serviable.
Je prend les commandes de programme. Je suis motivé par les maths et la physique tant que ce n'est pas une simple copie d'antisèche.
Vous pouvez trouver une grande partie de mes données hébergées dans mon mediafire. Le ZIP et la liste sont périmées depuis longtemps.
coucou Invité What a Face
avatar
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

. : TI-82 Stats.fr

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: [Projet] Solveur d'équations de 1er degré sans solve() - TIbasic z80

Message par Wistaro le Mar 8 Juil 2014 - 8:48

D'accord Smile Et désolé pour les fautes.
J'ai réfléchi et travaillé hier soir dessus, voici quelques nouveautés:

- Simplification au maximum de la fraction du résultat
- Si le résultat "tombe juste", on affiche ce résultat et non une fraction
- Détection si l'équation n'a pas de solutions (ou tous les réels la verifie)
- Amélioration de l'affichage.
- Rajout d'un autre trait de fraction supplémentaire quand le résultat est négatif

Vous voulez le code ?

__________________________________________________________________________
Clique ici pour retrouver tout mes programmes en TIbasic

Tu es curieux, Invité? Alors clique ici:


Coucou Invité !Ta dernière visite sur ce forum date de . Tu as posté un total de 78 message(s) sur Tout 82 et enfin, tu as 0 ans.
Si nous sommes le 0, je te souhaite un joyeux anniversaire ;-)

avatar
Wistaro
Passioné
Passioné

Messages : 910
Points Concours : 86
Productivité : 28
Date d'inscription : 16/06/2013
Localisation : Tarbes - DUT GEII
Calculatrice(s) :
  • TI-82
  • TI-82 Stats
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Voir le profil de l'utilisateur http://www.youtube.com/user/Wistaro

Revenir en haut Aller en bas

Re: [Projet] Solveur d'équations de 1er degré sans solve() - TIbasic z80

Message par Linkakro le Mar 8 Juil 2014 - 13:21

Je propose de poster le code de ta nouvelle version dans le premier message et de placer chaque code dans une balise spoiler pour organiser.
Je viens d'imaginer utiliser le programme AutoCalc de Critor sur TI-Planet pour chercher une expression à partir d'un résultat de dichotomie par solve().

__________________________________________________________________________
Vétéran du TI-Basic Zilog80. Ti82statfr sur Tout82 depuis 2009 et ti84pocketfr depuis noël 2012. Ti83plusfrUSB (été 2014, concours tiplanet suite du geek). Bidouille un peu d'assembleur Z80.
Incappable de gérer le temps et manque de tact, plutôt serviable.
Je prend les commandes de programme. Je suis motivé par les maths et la physique tant que ce n'est pas une simple copie d'antisèche.
Vous pouvez trouver une grande partie de mes données hébergées dans mon mediafire. Le ZIP et la liste sont périmées depuis longtemps.
coucou Invité What a Face
avatar
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

. : TI-82 Stats.fr

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: [Projet] Solveur d'équations de 1er degré sans solve() - TIbasic z80

Message par Wistaro le Mar 8 Juil 2014 - 16:41

Je posterais plutôt le code demain , ou dans la soirée, le temps de faire des mises à jours.

http://espace-ti.forumactif.com/t139-83-programme-calculant-la-fonction-derivee

Apparemment Persalteas utilise le même principe de recherche dans la chaîne, il est donc possible de traiter, je pense du seconde degré. Il serait intéressant de voir comment il travaille avec les racines et les fractions.

__________________________________________________________________________
Clique ici pour retrouver tout mes programmes en TIbasic

Tu es curieux, Invité? Alors clique ici:


Coucou Invité !Ta dernière visite sur ce forum date de . Tu as posté un total de 78 message(s) sur Tout 82 et enfin, tu as 0 ans.
Si nous sommes le 0, je te souhaite un joyeux anniversaire ;-)

avatar
Wistaro
Passioné
Passioné

Messages : 910
Points Concours : 86
Productivité : 28
Date d'inscription : 16/06/2013
Localisation : Tarbes - DUT GEII
Calculatrice(s) :
  • TI-82
  • TI-82 Stats
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Voir le profil de l'utilisateur http://www.youtube.com/user/Wistaro

Revenir en haut Aller en bas

Re: [Projet] Solveur d'équations de 1er degré sans solve() - TIbasic z80

Message par Linkakro le Mar 8 Juil 2014 - 20:17

N'oublie pas que EasyFx ne gère pas les fonctions composées.

__________________________________________________________________________
Vétéran du TI-Basic Zilog80. Ti82statfr sur Tout82 depuis 2009 et ti84pocketfr depuis noël 2012. Ti83plusfrUSB (été 2014, concours tiplanet suite du geek). Bidouille un peu d'assembleur Z80.
Incappable de gérer le temps et manque de tact, plutôt serviable.
Je prend les commandes de programme. Je suis motivé par les maths et la physique tant que ce n'est pas une simple copie d'antisèche.
Vous pouvez trouver une grande partie de mes données hébergées dans mon mediafire. Le ZIP et la liste sont périmées depuis longtemps.
coucou Invité What a Face
avatar
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

. : TI-82 Stats.fr

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: [Projet] Solveur d'équations de 1er degré sans solve() - TIbasic z80

Message par Wistaro le Mer 9 Juil 2014 - 18:04

Linkakro a écrit:N'oublie pas que EasyFx ne gère pas les fonctions composées.
EasyFX?

__________________________________________________________________________
Clique ici pour retrouver tout mes programmes en TIbasic

Tu es curieux, Invité? Alors clique ici:


Coucou Invité !Ta dernière visite sur ce forum date de . Tu as posté un total de 78 message(s) sur Tout 82 et enfin, tu as 0 ans.
Si nous sommes le 0, je te souhaite un joyeux anniversaire ;-)

avatar
Wistaro
Passioné
Passioné

Messages : 910
Points Concours : 86
Productivité : 28
Date d'inscription : 16/06/2013
Localisation : Tarbes - DUT GEII
Calculatrice(s) :
  • TI-82
  • TI-82 Stats
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Voir le profil de l'utilisateur http://www.youtube.com/user/Wistaro

Revenir en haut Aller en bas

Re: [Projet] Solveur d'équations de 1er degré sans solve() - TIbasic z80

Message par Linkakro le Mer 9 Juil 2014 - 19:31

Le dérivateur de Persalteas publié sur tout82free et je crois ti-planet inclut tout un menu et se proclame Easyf'(x) dans la présentation.
http://tout82.free.fr/forum/sujet.php?sujet=2709
rappel espaceti http://espace-ti.forumactif.com/t139-83-programme-calculant-la-fonction-derivee

__________________________________________________________________________
Vétéran du TI-Basic Zilog80. Ti82statfr sur Tout82 depuis 2009 et ti84pocketfr depuis noël 2012. Ti83plusfrUSB (été 2014, concours tiplanet suite du geek). Bidouille un peu d'assembleur Z80.
Incappable de gérer le temps et manque de tact, plutôt serviable.
Je prend les commandes de programme. Je suis motivé par les maths et la physique tant que ce n'est pas une simple copie d'antisèche.
Vous pouvez trouver une grande partie de mes données hébergées dans mon mediafire. Le ZIP et la liste sont périmées depuis longtemps.
coucou Invité What a Face
avatar
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

. : TI-82 Stats.fr

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: [Projet] Solveur d'équations de 1er degré sans solve() - TIbasic z80

Message par persalteas le Mer 9 Juil 2014 - 19:49

moui, pas sur du tout que celui de Tout-82-le-vieux soit à jour, c'est mieux de prendre celui de TI-Planet, j'ai du le bidouiller une ou deux fois post-concours...


__________________________________________________________________________
Bienvenue sur le nouveau Tout-82, Invité ! Viens discuter sur le chat... What a Face
Depuis que je me suis tatoué une calculatrice sur le bras, vous pouvez compter sur moi ! :P (Best joke ever x) )
avatar
persalteas
----------------------
----------------------

Messages : 482
Points Concours : 152
Productivité : 39
Date d'inscription : 06/12/2012
Localisation : Savoie, France
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Voir le profil de l'utilisateur http://tout82.forumactif.org

Revenir en haut Aller en bas

Re: [Projet] Solveur d'équations de 1er degré sans solve() - TIbasic z80

Message par ashtrail le Jeu 10 Juil 2014 - 16:22

Peu importe si c'est pas terminé pour l'instant je trouve que c'est une bonne idée (même si c'est pas le truc le plus utile au monde rien qu'à programmer ça doit être sympa, si on aime le défi réflexif) donc je salue ton effort.
Et aussi super présentation  Bien Joué Razz !!!

__________________________________________________________________________
Mes programmes :
-JEUX : Le TAPTAUPE, Le MINSTEP, Un Plus-Moins
-MATHS : Regroupement n°1, Regroupement n°2, tout sur les pourcentages
-AUTRE : Le programme qui jauge les prénoms
avatar
ashtrail
Connaisseur
Connaisseur

Messages : 248
Points Concours : 21
Productivité : 21
Date d'inscription : 18/06/2013
Localisation : Paris
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Voir le profil de l'utilisateur http://ti-freeworld.fr1.co/

Revenir en haut Aller en bas

Re: [Projet] Solveur d'équations de 1er degré sans solve() - TIbasic z80

Message par Wistaro le Ven 11 Juil 2014 - 14:19

Merci x)

__________________________________________________________________________
Clique ici pour retrouver tout mes programmes en TIbasic

Tu es curieux, Invité? Alors clique ici:


Coucou Invité !Ta dernière visite sur ce forum date de . Tu as posté un total de 78 message(s) sur Tout 82 et enfin, tu as 0 ans.
Si nous sommes le 0, je te souhaite un joyeux anniversaire ;-)

avatar
Wistaro
Passioné
Passioné

Messages : 910
Points Concours : 86
Productivité : 28
Date d'inscription : 16/06/2013
Localisation : Tarbes - DUT GEII
Calculatrice(s) :
  • TI-82
  • TI-82 Stats
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Voir le profil de l'utilisateur http://www.youtube.com/user/Wistaro

Revenir en haut Aller en bas

Re: [Projet] Solveur d'équations de 1er degré sans solve() - TIbasic z80

Message par Wistaro le Mer 16 Juil 2014 - 9:43

Mise à jour!


Ajout:
- Mode pas à pas!
- Simplification de la fraction finale
- Détection des erreurs (pas de solutions)
- Rapidité améliorée
- Nouveau design (partie graphique)
- Optimisation

code v1.2:
:DelVar XDelVar L26→dim(L2
:1C
:ClrHome
:Output(4,1,"EQUATION SOLVER
:Output(5,1,"v1.2 - Wistaro
:For(A,1,16
: Output(6,A,"+
: Output(3,A,"+
:End
:Lbl 1
:DelVar L1
:Input "?>",Str1
:ClrHome
:Disp "PLEASE WAIT...
:Str1Str9
:length(Str9L
:inString(Str9,"="P
:If not(P:Goto 1
:Lbl 9
:Str9Str1
:If C=1:Then
: sub(Str9,1,P-1Str1
: length(Str1V
: expr(Str1L2(C+2
:End
:If C=2:Then
: inString(Str9,"=")→P
: sub(Str9,P+1,length(Str9)-PStr1
: length(Str1V
: expr(Str1L2(C+2
:End
:If not(inString(Str1,"X"):Then
: {0}→L1
: Goto 6
:End
:1T
:Lbl 5
:length(Str1V
:If inString(Str1,"X":Then
: inString(Str1,"X"A
: Repeat Str3="+" or Str3="-" or A=1
: If A>1:A-1A
: sub(Str1,A,1)→Str3
: End
: If A=1:sub(Str1,1,inString(Str1,"X")-AStr4
: If A>1:sub(Str1,A+1,inString(Str1,"X")-(A+1)→Str4
:End
:T→dim(L1
:sub(Str4,1,1
:If Ans="+" or Ans="-" or Ans="*" or Ans="/":sub(Str4,2,length(Str4)-A)→Str4
:expr(Str4L1(T
:inString(Str1,"X"P
:If V-P:Then
: inString(sub(Str1,P+1,V-P),"X")→Q:Else:Goto 6:End
:If V>P and Q
:Then
: sub(Str1,P+1,V-P)→Str1
: T+1T
: Goto 5
:End
:Lbl 6:ClrHome
:ClrDraw
:DelVar Esum(L1L2(C
:If C=1:Then
: 2C:Goto 9
:End
:L2(1)-L2(2A
:L2(4)-L2(3B
:If A<0:Then
: AA:BB:End
:ClrHome
:DelVar Y1
:Text(0,0,Str9
:Text(7,0,"<=> ",L2(1),"X+",L2(3),"=",L2(2),"X+",L2(4
:Text(14,0,"<=> ",A,"X+",L2(3),"=",L2(4)
:Text(21,0,"<=> ",A,"X=",B
:If not(A:Goto 8
:Text(30,0,"<=> X="
:If not(fPart(B/A:Then
: Text(47,0,B/A
:Else
: If not(fPart(A) and not(fPart(B):Then
: If A<0:Then:AF:Else:AF:End
: If B<0:Then:BG:Else:BG:End
: A/gcd(F,G)→A
: B/gcd(F,G)→B
: End
: Text(40,0,B
: Text(54,0,A
: StorePic 1
: If A<0:Then:AA:1E:End
: If B<0:Then:BB:1E:End
: max({A,BM
: {0,1L1:{0,ML2
: LinReg(ax+b)L1,L2,Y1
: Equ►String(Y1,Str1
: sub(Str1,1,length(Str1)-3Str1
: DelVar Y1
: For(D,0,length(Str1)+E
: Text(47,3D,"-
: End
: RecallPic 1
:End
:Pause :ClrDraw
:Disp "
:Stop
:Lbl 8
:Text(30,0,"S= <ensemble vide>
:Pause

PS: Mise à jour du premier message du topic

__________________________________________________________________________
Clique ici pour retrouver tout mes programmes en TIbasic

Tu es curieux, Invité? Alors clique ici:


Coucou Invité !Ta dernière visite sur ce forum date de . Tu as posté un total de 78 message(s) sur Tout 82 et enfin, tu as 0 ans.
Si nous sommes le 0, je te souhaite un joyeux anniversaire ;-)

avatar
Wistaro
Passioné
Passioné

Messages : 910
Points Concours : 86
Productivité : 28
Date d'inscription : 16/06/2013
Localisation : Tarbes - DUT GEII
Calculatrice(s) :
  • TI-82
  • TI-82 Stats
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Voir le profil de l'utilisateur http://www.youtube.com/user/Wistaro

Revenir en haut Aller en bas

Re: [Projet] Solveur d'équations de 1er degré sans solve() - TIbasic z80

Message par m@thieu41 le Mer 16 Juil 2014 - 12:51

Super Smile
Bravo !  Bien Joué 

__________________________________________________________________________
ZSNAKE Mon premier (et unique) jeu en ASM:
Un Snake 2 joueurs (2caltos)
-> Je travaille sur une version plus stable du jeu, je poste dès que possible.
avatar
m@thieu41
----------------------
----------------------

Messages : 934
Points Concours : 65
Productivité : 47
Date d'inscription : 02/06/2013
Localisation : Nice, France
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: [Projet] Solveur d'équations de 1er degré sans solve() - TIbasic z80

Message par Linkakro le Mer 16 Juil 2014 - 20:16

Une équation du premier degré et dimension 1 (une seule inconnue et à la puissance 1) a toujours une solution, soit unique soit l'ensemble des réels/complexes. Je suis donc déconcerté par la mention de détection d'abscence de solution. Quelques détails manquent donc por décrire cette fonction.

Bon travail. Fonctionne correctement sans trop d'exigences.

__________________________________________________________________________
Vétéran du TI-Basic Zilog80. Ti82statfr sur Tout82 depuis 2009 et ti84pocketfr depuis noël 2012. Ti83plusfrUSB (été 2014, concours tiplanet suite du geek). Bidouille un peu d'assembleur Z80.
Incappable de gérer le temps et manque de tact, plutôt serviable.
Je prend les commandes de programme. Je suis motivé par les maths et la physique tant que ce n'est pas une simple copie d'antisèche.
Vous pouvez trouver une grande partie de mes données hébergées dans mon mediafire. Le ZIP et la liste sont périmées depuis longtemps.
coucou Invité What a Face
avatar
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

. : TI-82 Stats.fr

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: [Projet] Solveur d'équations de 1er degré sans solve() - TIbasic z80

Message par m@thieu41 le Jeu 17 Juil 2014 - 0:56

Peut être un truc comme 2=1 je pense...

__________________________________________________________________________
ZSNAKE Mon premier (et unique) jeu en ASM:
Un Snake 2 joueurs (2caltos)
-> Je travaille sur une version plus stable du jeu, je poste dès que possible.
avatar
m@thieu41
----------------------
----------------------

Messages : 934
Points Concours : 65
Productivité : 47
Date d'inscription : 02/06/2013
Localisation : Nice, France
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: [Projet] Solveur d'équations de 1er degré sans solve() - TIbasic z80

Message par Wistaro le Jeu 17 Juil 2014 - 8:21

Il affiche S= ensemble vide dans le cas ou les 2 termes sont égaux : 10X +32 = 10X + 32.

Mais, comme le dit Linkakro, la solution est IR.

J'ai rajouté l'affichage du résultat approché (s'il s'agit d'une fraction). Je suis en train de travailler sur les racines, pour conserver leur forme d'origine dans le résultat avec simplification.

__________________________________________________________________________
Clique ici pour retrouver tout mes programmes en TIbasic

Tu es curieux, Invité? Alors clique ici:


Coucou Invité !Ta dernière visite sur ce forum date de . Tu as posté un total de 78 message(s) sur Tout 82 et enfin, tu as 0 ans.
Si nous sommes le 0, je te souhaite un joyeux anniversaire ;-)

avatar
Wistaro
Passioné
Passioné

Messages : 910
Points Concours : 86
Productivité : 28
Date d'inscription : 16/06/2013
Localisation : Tarbes - DUT GEII
Calculatrice(s) :
  • TI-82
  • TI-82 Stats
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Voir le profil de l'utilisateur http://www.youtube.com/user/Wistaro

Revenir en haut Aller en bas

Re: [Projet] Solveur d'équations de 1er degré sans solve() - TIbasic z80

Message par m@thieu41 le Jeu 17 Juil 2014 - 11:48

Alors là ça ne va pas!
La solution n'est pas l'ensemble vide mais au contraire l'ensemble des réels (si tant est qu'on travaille seulement sur les réels)... Tu ne peux pas afficher qu'il n'y a pas de solution si tous les réels sont solutions... No

__________________________________________________________________________
ZSNAKE Mon premier (et unique) jeu en ASM:
Un Snake 2 joueurs (2caltos)
-> Je travaille sur une version plus stable du jeu, je poste dès que possible.
avatar
m@thieu41
----------------------
----------------------

Messages : 934
Points Concours : 65
Productivité : 47
Date d'inscription : 02/06/2013
Localisation : Nice, France
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: [Projet] Solveur d'équations de 1er degré sans solve() - TIbasic z80

Message par Linkakro le Jeu 17 Juil 2014 - 13:12

Wistaro a admis le cas de solution multiple juste avant ton message, M@thieu41. Je n'ai pas compris immédiatement que "IR" est une manière d'écrire le symbole R avec sa double barre.

Je me suis emballé lorsque j'ai dit que l'équation a toujours une solution. Elle peut admettre soit l'ensemble, soit aucune.
En effet l'équation n'est plus de degré 1 dès qu'on a des coefficients qui s'annulent. Donc l'équation n'est pas forcément une tautologie (toujours vraie) mais elle peut être insoluble, donc effectivement aucune solution.
>> Toutes les équations se simplifient au final en "AX=B"
>> Si A est non nul, alors la solution est unique "X=B/A"
>> Si A=0, alors on a "0=B".
>>>> Si B=0, alors on a la tautologie "0=0" et l'ensemble est "IR". (Ou les complexes "CI".)
>>>> Si B est non nul, alors l'équation est contradictoire, et il n'y a aucune solution.

Je n'ai pas encore vérifié ce que Wistaro a fait, et peut-être que notre discussion ne remet pas en cause ce qui est déjà fait par Wistaro.

Je crains que simplifier des racines apporte des complications énormes dont la gestion des erreurs d'approximation. Tu peux t'inspirer de mes programmes racines et de ceux qui m'ont inspiré. Mais je m'occupais de traiter des nombres déjà appliqués numériquement, donc tu (wistaro) as certainement moyen de faire plus fiable.
Et si tu (wistaro) gères des nombres transcendants tels que Pi et e, alors tes calculs littéraux à propos des racines en prendront un gros coup je pense.

__________________________________________________________________________
Vétéran du TI-Basic Zilog80. Ti82statfr sur Tout82 depuis 2009 et ti84pocketfr depuis noël 2012. Ti83plusfrUSB (été 2014, concours tiplanet suite du geek). Bidouille un peu d'assembleur Z80.
Incappable de gérer le temps et manque de tact, plutôt serviable.
Je prend les commandes de programme. Je suis motivé par les maths et la physique tant que ce n'est pas une simple copie d'antisèche.
Vous pouvez trouver une grande partie de mes données hébergées dans mon mediafire. Le ZIP et la liste sont périmées depuis longtemps.
coucou Invité What a Face
avatar
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

. : TI-82 Stats.fr

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: [Projet] Solveur d'équations de 1er degré sans solve() - TIbasic z80

Message par m@thieu41 le Jeu 17 Juil 2014 - 14:54

Le problème c'est que si A = 0, le prgm ne teste pas si B = 0 ou pas. Il dit directement qu'il n'y a pas de solution. (cf :If not(A:Goto 8:Lbl 8:Text(30,0,"S= :Pause ).
Donc il faudrait rajouter le cas où toutes les solutions sont vraies, sinon c'est faux!

Wistaro a effectivement admis le cas de solution multiple, mais en précisant que le programme répondait dans ce cas qu'il n'y avait aucune solution...

__________________________________________________________________________
ZSNAKE Mon premier (et unique) jeu en ASM:
Un Snake 2 joueurs (2caltos)
-> Je travaille sur une version plus stable du jeu, je poste dès que possible.
avatar
m@thieu41
----------------------
----------------------

Messages : 934
Points Concours : 65
Productivité : 47
Date d'inscription : 02/06/2013
Localisation : Nice, France
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: [Projet] Solveur d'équations de 1er degré sans solve() - TIbasic z80

Message par Wistaro le Jeu 17 Juil 2014 - 16:36

m@thieu41 a écrit:Le problème c'est que si A = 0, le prgm ne teste pas si B = 0 ou pas. Il dit directement qu'il n'y a pas de solution. (cf :If not(A:Goto 8:Lbl 8:Text(30,0,"S= :Pause ).
Donc il faudrait rajouter le cas où toutes les solutions sont vraies, sinon c'est faux!

Wistaro a effectivement admis le cas de solution multiple, mais en précisant que le programme répondait dans ce cas qu'il n'y avait aucune solution...

Il s'agit d'une erreur que j'ai corrigé ce matin, je posterais le code demain. De plus, j'ai également pris l'initiative de mettre une équation nulle si le signe "=" n'est pas mentionné. Si l'utilisateur rentre "10X
50", le programme va m’interpréter comme "10X+50=0".


Linkakro: Voilà l'erreur de mon programme, en fait. Je dis que quand A = 0, alors la solution est IR (anciennement ). Il faudrais une autre condition analysant B, et comme tu le dit,
Linkakro a écrit:>>>> Si B=0, alors on a la tautologie "0=0" et l'ensemble est "IR". (Ou les complexes "CI".)
>>>> Si B est non nul, alors l'équation est contradictoire, et il n'y a aucune solution.

__________________________________________________________________________
Clique ici pour retrouver tout mes programmes en TIbasic

Tu es curieux, Invité? Alors clique ici:


Coucou Invité !Ta dernière visite sur ce forum date de . Tu as posté un total de 78 message(s) sur Tout 82 et enfin, tu as 0 ans.
Si nous sommes le 0, je te souhaite un joyeux anniversaire ;-)

avatar
Wistaro
Passioné
Passioné

Messages : 910
Points Concours : 86
Productivité : 28
Date d'inscription : 16/06/2013
Localisation : Tarbes - DUT GEII
Calculatrice(s) :
  • TI-82
  • TI-82 Stats
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Voir le profil de l'utilisateur http://www.youtube.com/user/Wistaro

Revenir en haut Aller en bas

Re: [Projet] Solveur d'équations de 1er degré sans solve() - TIbasic z80

Message par Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Page 1 sur 2 1, 2  Suivant

Voir le sujet précédent Voir le sujet suivant Revenir en haut


 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum