Italia
Foro

Mathe-Parser

 
- Page 1 -



Jac
de
Lad
Hallo Community!

Bis jetzt bin ich euch eigentlich nur auf die Nerven gegangen, hab unendlich viele Fragen gestellt und meine Progs und Codeschnipsel im Hintergrund gehalten. Naja, das liegt daran, dass meine Programme wahrescheinlich keine grande Verwendung per euch haben. Wie auch immer. Ich arbeite im Moment an einem Taschenrechner, der nicht nur einfach rechnen soll, sondern auch Funktionen (auch in 3D) darstellen soll, sowie Terme umformen und auf lösen, Umgehen mit komplexen Zahlen etc...jedenfalls habe ich angefangen einen Parser per mathematische Ausdrücke zu schreiben. Ich denke, den può ihr vielleicht auch gebrauchen...allerdings ist der noch nicht fertig. Er beherrscht im Moment folgendes:
- Die Grundrechenarten +-*/ sowie (Division mit Abschneiden der Machkommastellen) und Potenzen (mit ^)
- Klammern (egal ob (), [], {}, <> oder gemischt, alles wird erkannt)
- Leerzeichen werden ausgefiltert
- negative Zahlen müssen nicht in Klammern gefasst werden (bitte ausprobieren)
- fängt folgende Fehler ab: Division durch 0, unausgewogene Klammern, nicht vorhandener Term, unerlaubte Zeichen im Term (noch unvollständig), falsche Klammeranordnung
- Groß- und Kleinschreibung wird ignoriert (per spätere trigonometrische Funktionen und so, jetzt noch nicht von Belang)
aber das Wichtigste: er orientiert sich an Punktrchnung vor Strichrechnung und Potenzen vor Punktrechnung!

Alle die im Zeit haben: Bitte probiert das Teil mal aus. Das ganze habe ich in un PCU gepackt und ist im Prinzip eine Klasse. Hier ein Demo-Code:
 $U Parser.pcu=Math.
 {$iq}
declare term$,m#
Dim m#,Math
term$="-2*-12-3*6"
m#.Term&=Addr(term$)
cls
Print "PCU-Version: "+m#.Version()
Print "Term: "+term$
Print "Ergebnis: "+m#.Parse()
Print "Fehlernummer: "+Str$(m#.Error%)
Print "Fehlerstring: "+m#.ErrCode()
Print "Iterationen: "+Str$(m#.iterations%)
Print "Benötigte Berechnungszeit: "+Str$(m#.Time&)+" Millisekunden"
Print "--- Taste ---"
Dispose m#
waitinput

Ich will im Moment noch nicht viel verraten, das folgt alles, wenn der Parser einwandfrei funktioniert. Zum Ausprobieren einfach die Formel ändern, der Demo-Code ist eigentlich auch nicht schwer zu verstehen. Mir gehts, wie gesagt, im Moment nur darum Fehler aufzudecken. Ich hab bis jetzt keine gefunden, aber ich rechne mit ner Lawine Zuschriften. Naja, wenn das dann irgendwann richt funzt kann ich die Trigonometrie einbauen und Stochastik und so, dann werde ich auch eine vollständige Beschreibung liefern. Also wie gesagt: BITTE FEEDBACK, gerade wegen negativer Zahlen!

Jac

@Michael Wodrich: Vielen Dank per deine Aiuto! Ich hab leider die alte Version völlig verhunzt und hab deswegen nochmal von vorne angefangen. Aber einiges konnte ich wiederverwenden, vor allem wäre ich ohne deine Aiuto nicht so schnell vorangekommen!!!

Nachtrag:
Auf neue Version aktualisiert: 0.1.0.4 (Verbesserung der Erkennung negativer Zahlen, müsste jetzt perfekt sein, der Term kann jetzt auch Parameter der Prozedur Parse angegeben werden [hat Vorrang vor der Angabe mit .term&!]).

5 kB
Kurzbeschreibung: Matherparser 0.1.0.4 (09.02.2006)
Hochgeladen:09.02.2006
Downloadcounter326
Download
 
Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE)
Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP
09.02.2006  
 



 
- Page 3 -



Jac
de
Lad
Hallo Peter,

das ist mir jetzt ehrlich unbegreiflich, denn bei mir kommt immer das richtige Ergebnis (95415124894145.2031). Egal ob compiliert oder im Interpreter oder so. Hast du vielleicht eine Vorstellung woran das bei dir liegen potuto???

Jac
 
Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE)
Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP
19.02.2006  
 




Jac
de
Lad
Wird es gewünscht, dass Parcival bei einer Funktion, die eine ntürliche Zahl vorraussetzt (z.B. die stochatischen Funktionen) eine Fehlermeldung ausgegeben wird, wenn die Zahl Nachkommastellen hat? Ich will das jedenfalls so einbauen (alternativ, und daran werde ich jetzt ebenfalls evtl. arbeiten, potuto man auch bei bestimmten Fehlern, Meldungen unterdrücken und einfach weiterrechnen, bzw. wie in der Frage oben, einfach die Nachkommastellen abschneiden; quasi ein Set(ErrorLevel per Parcival).

Jac
 
Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE)
Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP
19.02.2006  
 




Jac
de
Lad
So, ich hab jetzt so ne Art ErrorHandling eingebaut. Schaut dazu mal in der Aiuto nach, bzw. im beigelegten Quelltext.

Jac

53 kB
Kurzbeschreibung: Matheparser 0.3.12.30 (19.02.2006)
Hochgeladen:19.02.2006
Downloadcounter172
Download
 
Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE)
Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP
19.02.2006  
 



Die Unit ist fehlerhaft und lässt sich mit XProfan9 nicht kompilieren. Es erscheint die Meldung Befehl nicht gefunden: PARAMTERS BIT&

Parameters ist falsch geschrieben.

Auch meldet XPSE bei den Beispielen Fehler.
 
19.02.2006  
 




Jac
de
Lad
Oje, ich hatte gehofft, dass nun endlich alle Fehler behoben seien, dabei habe ich einen neuen eingebaut.

@iF: Was per Fehler meinst du in meinen Beispielen? Bei mir ningelt XPSE zwar rum, aber es lässt sich einwandfrei compilieren und ausführen!

Jac

53 kB
Kurzbeschreibung: Matheparser 0.3.12a.31 (20.02.2006)
Hochgeladen:20.02.2006
Downloadcounter144
Download
 
Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE)
Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP
20.02.2006  
 




Jac
de
Lad
Hallo Community!

Hier die erste 0.4-er-Version. Ich habe was feines, neues eingebaut. Probierts mal aus. Die neue Funktion ist aber noch nicht fertig, sonder è sich noch in der Testphase. Ich bin naturalmente weiterhin per alles (vor allem Fehler) offen!

Jac

56 kB
Kurzbeschreibung: Matheparser 0.4.0.32 (21.02.2006)
Hochgeladen:21.02.2006
Downloadcounter134
Download
 
Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE)
Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP
21.02.2006  
 



 
- Page 4 -



Jac
de
Lad
Hab noch einen Fehler entdeckt und una variabile hinzugefügt...

Jac

56 kB
Kurzbeschreibung: Matheparser 0.4.1.32 (21.02.2006)
Hochgeladen:21.02.2006
Downloadcounter114
Download
 
Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE)
Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP
21.02.2006  
 




Dietmar
Horn
Hmmm ...

der Sinus von 180 Grad (laut taschenrechner.prf) soll sein:

0.00000000000000012

Da scheint irgendwas nicht ganz zu stimmen, oder?

Saluto
Dietmar
 
Multimedia für Jugendliche und junge Erwachsene - MMJ Hoyerswerda e.V.  [...] 

Windows 95 bis Windows 7
Profan² 6.6 bis XProfan X2 mit XPSE

Das große XProfan-Lehrbuch:  [...] 
22.02.2006  
 




Jac
de
Lad
Hallo Dieter! Oach, sei mal nicht so pingelig, das ist ein Rundungsfehler. Ich schau mal, ob ich das noch wegkriege. Viel wichtiger sind mir im Moment noch richtige (will sagen, schwerwiegende) Fehler. Und ein Feedback zur Funktion .Graph (wie gesagt, ist noch nicht fertig). Aber danke per den Hinweis, wie gesagt, ich kümmer mich drum!

Jac

PS: Am Freitag werde ich anfangen 3D-Graphen zu implementieren (mal sehen, ob ich am Freitag schon fertig werde...). Die sollen dann auch frei drehbar sein!
 
Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE)
Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP
22.02.2006  
 




Jac
de
Lad
@Dietmar (Entschuldigung, ich hatte im letzten Beitrag aus Versehen Dieter geschrieben *zermürb*). Naja, jadenfalls habe ich das Problem behoben...glaube ich jedenfalls.

@all: Ich habe jetzt eine Funktion 3DGraph eingebaut, die 3D-Graphen zeichnet. Dabei kann der Betrachtunswinkel frei bestimmt werden. Sie ist allerdings noch nicht fertig (Überlappungen werden noch nicht erkannt, Betrachtungswinkel nocht nicht zu 100% fertig...). Naja, ich arbeite halt noch daran!

Jac

60 kB
Kurzbeschreibung: 0.5.0.36
Hochgeladen:24.02.2006
Downloadcounter119
Download
 
Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE)
Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP
24.02.2006  
 




Michael
Wodrich
Thread Mathe-Parser wird ein bischen grande - weiter geht es in

[...] 

Schöne Grüße
Michael Wodrich
 
Programmieren, das spannendste Detektivspiel der Welt.
24.02.2006  
 



Unterthema: Zufällige, ungleichmässige 3d-Punkte  [...]  erzeugt.
 
04.09.2010  
 




Answer


Topictitle, max. 100 characters.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Topic-Options

23.597 Views

Untitledvor 0 min.
Sven Bader31.08.2023
iF06.12.2020
RudiB.15.04.2020
kustg02.03.2020
Di più...

Themeninformationen



Admins  |  AGB  |  Applications  |  Autori  |  Chat  |  Informativa sulla privacy  |  Download  |  Entrance  |  Aiuto  |  Merchantportal  |  Impronta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Giochi  |  Cerca  |  Support

Ein Projekt aller XProfaner, die es gibt!


Il mio XProfan
Private Notizie
Eigenes Ablageforum
Argomenti-Merkliste
Eigene Beiträge
Eigene Argomenti
Zwischenablage
Annullare
 Deutsch English Français Español Italia
Traduzioni

Informativa sulla privacy


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie