Autor |
Beitrag |
Uwe (Uwe)
| Veröffentlicht am Donnerstag, den 04. Januar, 2001 - 20:27: |
|
Hallo Leute! Wer hätte Lust ein neues CAS zu programmieren? Da dies ein recht grosses Projekt ist, wäre es erst sinnvoll, wenn sich mehrere Programmierer zusammenfinden. Welche Sprache haltet ihr für geeignet? Mein Favorit ist C++. Uwe uwe@zahlreich.de |
Bom (Bom)
| Veröffentlicht am Mittwoch, den 28. März, 2001 - 16:41: |
|
Ich bin für VisualBasic. |
Lars Weiser
| Veröffentlicht am Mittwoch, den 28. März, 2001 - 17:41: |
|
Bin dabei !!! P.S.: Visual Basic oder Java ??? |
Bom (Bom)
| Veröffentlicht am Mittwoch, den 28. März, 2001 - 17:48: |
|
also ich kann nur vb gut, bei den anderen müßtet ihr mir auf die sprünge helfen... |
Mr. Rascal (Uwe)
| Veröffentlicht am Mittwoch, den 28. März, 2001 - 19:03: |
|
Visual Basic finde ich mittlerweile auch ganz gut, aber ich ein wenig Bedenken, ob es schnell genug ist. Aber um ersteinmal Übung zu bekommen, wie man soetwas überhaupt macht, finde ich VB sehr geeignet. Der erste Schritt ist es, eine Prozedur zu schreiben, die eine eingegebene Formel analysiert und in einem Baum speichert. Das wird gut in Büchern beschrieben, bei denen es um Compiler-Programmierung geht. Uwe |
Bom (Bom)
| Veröffentlicht am Mittwoch, den 28. März, 2001 - 19:08: |
|
haste icq oder aim? dann können wir uns ja mal genauer unterhalten.... formeleingaben in verschiedene Variablen zu speichern ist kein prob, da bin ich Meister, aber die Formeln fehlen mir... |
Mr. Rascal (Uwe)
| Veröffentlicht am Mittwoch, den 28. März, 2001 - 20:22: |
|
Hallo Bom! Ja, ich habe wohl eine icq-Nummer, aber zur Zeit benutze ich sie nicht. Ich denke, es wäre auch für andere besser, wenn wir uns hier unterhalten könnten. Der Benutzer muss einen Term eingeben können (z.B. in ein Textfeld in VB), der dann analysiert wird. Je nachdem, was der Benutzer eingegeben hat, muss das CAS reagieren. z.B.: Terme vereinfachen: 2x + 7 + 3x + 9 Ausgabe: 5x + 16 Festlegung einer Variablen: x := 5 Verwenden dieser Variablen: 2x + 9 Ausgabe: 19 Aussagen prüfen: x > 2 Ausgabe: wahr Mengenoperationen: A := {2, 3, 7} Element von (z.B.): 5 in A Ausgabe: falsch Diese Liste kann man nun beliebig fortsetzen. Variablen müssen dabei dynamisch gespeichert, d.h. man kann nicht im Programm schreiben: Dim x as Integer x = 5 Sondern man z.B. muss mit einem Array arbeiten, in dem einerseits der Variablenname des Benutzers (z.B. "x") und andererseits der Wert gespeichet ist (5). Der Benutzer legt ja zur Laufzeit erst fest, welche Variablen er beutzen möchte. Also sehen wir mal weiter ... Uwe |
Bom (Bom)
| Veröffentlicht am Donnerstag, den 29. März, 2001 - 16:39: |
|
Terme verinfachen ist net einfach aber beispiel kann man mit Überprüfung, ob Buchstabe vorhanden machen. Variablen werden ja werden der Laufzeit in Variable gespeichert z.B. a = variable1.text Aussage prüfen ist in vb integr. den rest weiß ich net so genau |
Fstrichvonx (Fstrichvonx)
| Veröffentlicht am Dienstag, den 29. Mai, 2001 - 12:27: |
|
wuerde euch empfehlen auf jeden fall auf c++ zurueckzugreifen! wuerde mitmachen :-) |
holger
| Veröffentlicht am Dienstag, den 29. Mai, 2001 - 14:28: |
|
Ich würde von c++ abraten. c++ Code zu schreiben dauert lange, und man macht viele Fehler. Die Sprache ist vom Design her unglücklich gemacht, da sie hybrid, also nicht explizit auf OO ausgelegt ist. (Bevor ich mit c++ anfange, greife ich auf pure c zurück) Java ist da die bei weitem bessere Alternative. Außerdem sollt man überlegen, ob man nicht zumindest Teile des System in einer funktionalen Programmiersprache Bsp. Haskell schreibt. Haskell ist meiner Meinung nach für mathematische Anwendungen perfekt geeignet. Am Besten und am flexibelsten wäre es, wenn man das CAS um einen Interpreter für eine funktionale high level Sprache herumschreiben würde. Dann müsste man zunächst nur ein paar grundlegende Dinge programmieren, und könnte dann die eigentlichen Algorithmen nach und nach darauf aufbauen. Also, so lange ihr nicht mit so einem Windows Quatsch wie VB anfangt, könnt ihr mit meiner Unterstützung rechnen. |
Bom (Bom)
| Veröffentlicht am Dienstag, den 29. Mai, 2001 - 15:33: |
|
sorry aber woher soll ich Haskell können? bin froh mit nem bißchen vb, delphi/pascal.... |
holger@partsch.net
| Veröffentlicht am Dienstag, den 29. Mai, 2001 - 18:42: |
|
www.haskell.org Es lohnt sich immer! Besser als eine Vorlesung in Typentheorie! |
holger
| Veröffentlicht am Dienstag, den 29. Mai, 2001 - 19:05: |
|
O, das war wohl das falsche Feld für die e-Mails Adresse. Hier der berühmte Quicksort in Haskell: quicksort [] = [] quicksort (x:xs) =
quicksort [y | y <- xs, y<x ] ++ [x] ++ quicksort [y | y <- xs,y>=x]
direkter kann man einen Algo in einer Programmiersprache wohl nicht mehr umsetzen |
Bom (Bom)
| Veröffentlicht am Dienstag, den 29. Mai, 2001 - 19:10: |
|
klingt interessant... brauch das irgendwelche runtime dateien oder so? Icq:69485398 |
Fstrichvonx (Fstrichvonx)
| Veröffentlicht am Mittwoch, den 30. Mai, 2001 - 09:02: |
|
c++ nicht objektorientiert? |
holger
| Veröffentlicht am Mittwoch, den 30. Mai, 2001 - 10:35: |
|
nicht so ganz. Im Prinzip ist es möglich, in jeder Sprache OO zu Programmieren. Es geht also darum, ob eine Programmiersprache durch bestimmte Syntax Elemente OO explizit unterstützt, oder OO sogar verlangt. In c++ kanst du im Gegensatz zu einer strengen OO Sprache (Bsp. Java) auch nicht OO programmieren. Was aber schwerer wiegt, ist das c++ OO auch nicht so gut unterstützt wie etwas Java (Speicherverwaltung). c++ ist halt c, das nachträglich mit ein paar OO Geschichten aufgerüstet wurde. Das Resultat ist in meinen Augen eher dürftig. |
Fstrichvonx (Fstrichvonx)
| Veröffentlicht am Mittwoch, den 30. Mai, 2001 - 12:50: |
|
was vermisst du denn in c++? |
Fstrichvonx (Fstrichvonx)
| Veröffentlicht am Mittwoch, den 30. Mai, 2001 - 13:51: |
|
Wer z.B. mal eine Mathematikbibliothek a la math++ von Roguewave gesehen hat weiß ohnehin, welche geniale Bibliotheken man mit cleverem Operatoroverloading und Templates aufbauen kann. Dann liefert ein matrix.eigenvalue eben sofort einen Vektor der Eigenwerte zurück, was wiederum ein vector<basistyp> ist. Damit kann man sehr effektiv mathematische Probleme und Ausdrücke codieren. ______________________________________ noch ne meinung, was sagst du dazu? |
Mr. Rascal (Uwe)
| Veröffentlicht am Mittwoch, den 30. Mai, 2001 - 22:32: |
|
Hallo Leute, ich bin erfreut über das große Interesse an einem neuen CAS und ich denke, wir sollten nun zur Tat schreiten. Um verschiedene Ansätze miteinander austauschen zu können, habe ich eine HP eingerichtet. Bisher steht dort nicht viel, aber mit eurer Hilfe wird es mehr. Die URL lautet: http://people.freenet.de/ComputerAlgebra/ Ihr könnt ja mal kleine Versuche in der Sprache eurer Wahl starten und dann dort veröffentlichen. Davon können sich dann Andere wieder inspirieren lassen. Viel Spass! Uwe |
Fstrichvonx (Fstrichvonx)
| Veröffentlicht am Donnerstag, den 31. Mai, 2001 - 07:22: |
|
vielleicht kommem von hier auch noch nuetzliche Tips: http://www.c-plusplus.de/ubb/ubb/Forum11/HTML/000133.html |
|