Themenbereiche Themenbereiche Profile Hilfe/Anleitungen Help    
Recent Posts Last 1|3|7 Days Suche Suche Tree Tree View  

Neues Computer-Algebra-System program...

ZahlReich - Mathematik Hausaufgabenhilfe » Mathesoftware » Eigenentwicklungen » Neues Computer-Algebra-System programmieren « Zurück Vor »

Das Archiv für dieses Kapitel findest Du hier.

Autor Beitrag
Seitenanfangvoriger Beitragnächster BeitragSeitenende Link zu diesem Beitrag

Uwe (Uwe)
Suche alle Beiträge dieser Person in dieser Hauptrubrik
Veröffentlicht am Donnerstag, den 04. Januar, 2001 - 20:27:   Beitrag drucken

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
Seitenanfangvoriger Beitragnächster BeitragSeitenende Link zu diesem Beitrag

Bom (Bom)
Suche alle Beiträge dieser Person in dieser Hauptrubrik
Veröffentlicht am Mittwoch, den 28. März, 2001 - 16:41:   Beitrag drucken

Ich bin für VisualBasic.
Seitenanfangvoriger Beitragnächster BeitragSeitenende Link zu diesem Beitrag

Lars Weiser
Suche alle Beiträge dieser Person in dieser Hauptrubrik
Veröffentlicht am Mittwoch, den 28. März, 2001 - 17:41:   Beitrag drucken

Bin dabei !!!

P.S.: Visual Basic oder Java ???
Seitenanfangvoriger Beitragnächster BeitragSeitenende Link zu diesem Beitrag

Bom (Bom)
Suche alle Beiträge dieser Person in dieser Hauptrubrik
Veröffentlicht am Mittwoch, den 28. März, 2001 - 17:48:   Beitrag drucken

also ich kann nur vb gut, bei den anderen müßtet ihr mir auf die sprünge helfen...
Seitenanfangvoriger Beitragnächster BeitragSeitenende Link zu diesem Beitrag

Mr. Rascal (Uwe)
Suche alle Beiträge dieser Person in dieser Hauptrubrik
Veröffentlicht am Mittwoch, den 28. März, 2001 - 19:03:   Beitrag drucken

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
Seitenanfangvoriger Beitragnächster BeitragSeitenende Link zu diesem Beitrag

Bom (Bom)
Suche alle Beiträge dieser Person in dieser Hauptrubrik
Veröffentlicht am Mittwoch, den 28. März, 2001 - 19:08:   Beitrag drucken

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...
Seitenanfangvoriger Beitragnächster BeitragSeitenende Link zu diesem Beitrag

Mr. Rascal (Uwe)
Suche alle Beiträge dieser Person in dieser Hauptrubrik
Veröffentlicht am Mittwoch, den 28. März, 2001 - 20:22:   Beitrag drucken

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
Seitenanfangvoriger Beitragnächster BeitragSeitenende Link zu diesem Beitrag

Bom (Bom)
Suche alle Beiträge dieser Person in dieser Hauptrubrik
Veröffentlicht am Donnerstag, den 29. März, 2001 - 16:39:   Beitrag drucken

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
Seitenanfangvoriger Beitragnächster BeitragSeitenende Link zu diesem Beitrag

Fstrichvonx (Fstrichvonx)
Suche alle Beiträge dieser Person in dieser Hauptrubrik
Veröffentlicht am Dienstag, den 29. Mai, 2001 - 12:27:   Beitrag drucken

wuerde euch empfehlen auf jeden fall auf c++ zurueckzugreifen!

wuerde mitmachen :-)
Seitenanfangvoriger Beitragnächster BeitragSeitenende Link zu diesem Beitrag

holger
Suche alle Beiträge dieser Person in dieser Hauptrubrik
Veröffentlicht am Dienstag, den 29. Mai, 2001 - 14:28:   Beitrag drucken

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.
Seitenanfangvoriger Beitragnächster BeitragSeitenende Link zu diesem Beitrag

Bom (Bom)
Suche alle Beiträge dieser Person in dieser Hauptrubrik
Veröffentlicht am Dienstag, den 29. Mai, 2001 - 15:33:   Beitrag drucken

sorry aber woher soll ich Haskell können? bin froh mit nem bißchen vb, delphi/pascal....
Seitenanfangvoriger Beitragnächster BeitragSeitenende Link zu diesem Beitrag

holger@partsch.net
Suche alle Beiträge dieser Person in dieser Hauptrubrik
Veröffentlicht am Dienstag, den 29. Mai, 2001 - 18:42:   Beitrag drucken

www.haskell.org
Es lohnt sich immer! Besser als eine Vorlesung in Typentheorie!
Seitenanfangvoriger Beitragnächster BeitragSeitenende Link zu diesem Beitrag

holger
Suche alle Beiträge dieser Person in dieser Hauptrubrik
Veröffentlicht am Dienstag, den 29. Mai, 2001 - 19:05:   Beitrag drucken

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
Seitenanfangvoriger Beitragnächster BeitragSeitenende Link zu diesem Beitrag

Bom (Bom)
Suche alle Beiträge dieser Person in dieser Hauptrubrik
Veröffentlicht am Dienstag, den 29. Mai, 2001 - 19:10:   Beitrag drucken

klingt interessant... brauch das irgendwelche runtime dateien oder so?

Icq:69485398
Seitenanfangvoriger Beitragnächster BeitragSeitenende Link zu diesem Beitrag

Fstrichvonx (Fstrichvonx)
Suche alle Beiträge dieser Person in dieser Hauptrubrik
Veröffentlicht am Mittwoch, den 30. Mai, 2001 - 09:02:   Beitrag drucken

c++ nicht objektorientiert?
Seitenanfangvoriger Beitragnächster BeitragSeitenende Link zu diesem Beitrag

holger
Suche alle Beiträge dieser Person in dieser Hauptrubrik
Veröffentlicht am Mittwoch, den 30. Mai, 2001 - 10:35:   Beitrag drucken

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.
Seitenanfangvoriger Beitragnächster BeitragSeitenende Link zu diesem Beitrag

Fstrichvonx (Fstrichvonx)
Suche alle Beiträge dieser Person in dieser Hauptrubrik
Veröffentlicht am Mittwoch, den 30. Mai, 2001 - 12:50:   Beitrag drucken

was vermisst du denn in c++?
Seitenanfangvoriger Beitragnächster BeitragSeitenende Link zu diesem Beitrag

Fstrichvonx (Fstrichvonx)
Suche alle Beiträge dieser Person in dieser Hauptrubrik
Veröffentlicht am Mittwoch, den 30. Mai, 2001 - 13:51:   Beitrag drucken

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?
Seitenanfangvoriger Beitragnächster BeitragSeitenende Link zu diesem Beitrag

Mr. Rascal (Uwe)
Suche alle Beiträge dieser Person in dieser Hauptrubrik
Veröffentlicht am Mittwoch, den 30. Mai, 2001 - 22:32:   Beitrag drucken

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
Seitenanfangvoriger Beitragnächster BeitragSeitenende Link zu diesem Beitrag

Fstrichvonx (Fstrichvonx)
Suche alle Beiträge dieser Person in dieser Hauptrubrik
Veröffentlicht am Donnerstag, den 31. Mai, 2001 - 07:22:   Beitrag drucken

vielleicht kommem von hier auch noch nuetzliche Tips:

http://www.c-plusplus.de/ubb/ubb/Forum11/HTML/000133.html

Beitrag verfassen
Das Senden ist in diesem Themengebiet nicht unterstützt. Kontaktieren Sie den Diskussions-Moderator für weitere Informationen.

ad

Administration Administration Abmelden Abmelden   Previous Page Previous Page Next Page Next Page