Programmieren

Du suchst ein Programm für einen bestimmten Zweck?
Antworten
jack1
Beiträge: 14
Registriert: 14.03.2007 22:12:14

Programmieren

Beitrag von jack1 » 06.09.2008 12:39:20

Hi,
ich studiere momentan (richtung Maschinenbau) und haben dort auch Informatik gehabt (ein bischen programieren-----mit VBA, unter exel, unter windoof :( ).
Nun sollen wir aber in einem anderen Fach (Numerische Methoden) etwas programmieren und sind unabhängig von unserer Programmiersprache.
Ich suche jetzt halt, ein Sprache die unter Linux läuft und gut für meine Aufgabe zu verwenden ist (will jetzt aber keinen Glaubenskrieg lostreten was die beste Programmiersprache ist!!!)

was sie haben sollte:
-es sollte leicht möglich sein ein Tabelle einzulesen bzw Messwerte (das muss man sagen war an VBA mit exel schon gut..)
-werte in einer Datei strukturiert ausgeben können
-leicht mathmatische formeln einzugben
-nicht zu schwer zu erlernen sein (halt keine übermächtige Sprache)
-schön wäre es wenn man auch die daten in einem Diagramm/Graphen ausgeben könnte um den verlauf einer Messung zu zeigen

ps: ich weiß das ist ein bischen schwammig gestellte frage/aufforderung aber ich hab keine ahnung wie ich es besser fragen soll. Hab mich auch selbst schon ein bischen umgeguckt aber ich find man kann ohne es zu testen nicht gut entscheiden was jetzt besser ist.Würd mich über ein paar Vorschläge und Tips freuen.... :D

Benutzeravatar
Simmel
Beiträge: 698
Registriert: 08.03.2004 14:43:43
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Düsseldorf
Kontaktdaten:

Re: Programmieren

Beitrag von Simmel » 06.09.2008 13:07:38

Hi,

ich selbst kann diese Programmier-Sprache auch nicht, habe aber bis jetzt von vielen nur gutes darüber gehört.

PERL könnte da was für dich sein. Im Gegensatz zu C z.B. muss man nicht alles haarklein deklarieren, Perl kann gerade was Zahlen angeht (Fließkomma, ganze, usw.) sehr flexibel damit umgehen.

Wenn du also 1 + 1,4563 rechnest, erkennt Perl von ganz alleine das die zweite Zahl eine Fließkommazahl ist und macht aus dem Ergebnis sofort auch eine Fließkommazahl. Das geht mit C z.B. nicht.

Allerdings habe ich mich selbst mit PERL noch nicht beschäftigt. Ich kenn das nur aus Erzählungen von 2-3 C-Programmierern die umgestiegen sind, weil PERL was das angeht wohl extrem komfortabel sein soll.

Vielleicht hilft es dir ja weiter

:-)


Nachtrag:

Ich ahbe mir gerade nochmal deine Anforderungen durchgelesen, hmh. Bis auf die mathematischen Formeln, kannst du den Rest theoretisch auch durch die BASH regeln.

mit sed und awk hast du 2 mächtige Werkzeuge die dir so ziemlich jede Tabelle zerhackstücken können, was die mathematischen Formeln angeht, wäre ich mir da nicht so sicher (grafisch geht bei der BASH allerdings nichts). Hast du mal ein Beispiel?
you've got to know how far to go in going too far

perl -le'print+(split//,"schaeuble")[6,8,7,3,5,0..2,4]'

http://creativecommons.org/licenses/by-nc-sa/2.0/

jroehl
Beiträge: 183
Registriert: 04.01.2007 13:03:14

Re: Programmieren

Beitrag von jroehl » 06.09.2008 13:42:50

Deine Anforderungen scheinen mir eher in Richtung Computer Algebra System (CAS) zu weisen, als in Richtung klassische Programmiersprache. Diese bieten auch Kontrollstrukturen. GUI-Programmierung oder binäre Programme sind damit jedoch nicht möglich. Persönlich benutze ich Maxima und Axiom. Eine Suche mit den Paketmanager nach ,,algebra'' oder ,,numeric'' bringt einige weitere Ergebnisse.
Letzendlich musst du aber vorher mit deinen Prof klären, ob das Programmiersprachen in seinen Sinne sind.
Gruß

Benutzeravatar
sys_op
Beiträge: 672
Registriert: 17.09.2007 19:10:47
Lizenz eigener Beiträge: GNU General Public License

Re: Programmieren

Beitrag von sys_op » 06.09.2008 13:46:14

ich stehe auf php !
mit einer cli umgebung kann man die scripte sogar auf der shell ebene laufen lassen. und unabhängiger kann man fast nicht sein.
gruss sys;-)

Bobbycar192
Beiträge: 54
Registriert: 20.04.2007 10:56:19

Re: Programmieren

Beitrag von Bobbycar192 » 06.09.2008 15:15:25

Für numerische Berechnungen aller Art im ingenieurwissenschaftlichen Bereich empfiehlt sich scilab. Leicher Syntax, vor allem für Matrizen und zum großen Teil MatLab-kompatibel.
Those who would give up essential liberty to purchase a little temporary safety, deserve neither liberty nor safety.
Benjamin Franklin

Benutzeravatar
armin
Beiträge: 2682
Registriert: 17.03.2005 11:49:14

Re: Programmieren

Beitrag von armin » 06.09.2008 18:56:40

Neben Scilab bietet sich auch noch Octave an.
Ich erinnere mich leider gerade nicht mehr dran, welches von beiden das bessere Tool war. In der Uni haben wir in einem Semester das eine und dann im nächsten das andere benutzt.

Zum Plotten von was auch immer kommt dann gnuplot zum Einsatz.
Formerly known as Trigger.
HP 8510p - Debian Sid
Mitglied des Debian-KDE-Teams

roli
Beiträge: 3174
Registriert: 10.09.2003 17:39:58

Re: Programmieren

Beitrag von roli » 07.09.2008 12:40:54

Hi,

meinen eigen Vorlieben folgend wuerde ich dir auch Perl emfehlen, aber:
jack1 hat geschrieben:-es sollte leicht möglich sein ein Tabelle einzulesen bzw Messwerte (das muss man sagen war an VBA mit exel schon gut..)
ohne es jemals probiert zu haben, OpenOffice hat doch StarBasic, oder wie das genau heisst, vielleicht waere das ja was.
Roland


"Aber wenn du schon so unwissend bist, davon noch nicht gehört zu haben,
so will ich es doch als gut ansehen, daß du lieber einmal töricht fragst,
als weiterhin nichts von etwas zu wissen, das man doch wissen sollte."
aus "Die Edda des Snorri Sturluson", "Gylfis Täuschung"

Benutzeravatar
Meillo
Moderator
Beiträge: 9279
Registriert: 21.06.2005 14:55:06
Wohnort: Balmora
Kontaktdaten:

Re: Programmieren

Beitrag von Meillo » 07.09.2008 12:44:06

AWK + gnuplot wäre meine Wahl.
Use ed once in a while!

kistenschrauber
Beiträge: 57
Registriert: 12.10.2004 22:07:46
Lizenz eigener Beiträge: MIT Lizenz

Re: Programmieren

Beitrag von kistenschrauber » 07.09.2008 23:39:13

Hallo Jack1,

Da sich das Fach "Numerische Methoden" nennt, denke ich schon das es sich um eine "richtige" Programmiersprache handeln soll. MatLab, SciLab, Octave etc. werden da schon mal ausscheiden. Das sind math. Systeme, die viele Probleme der Numerik schon umgehen bzw. wegoptimieren. (Stichworte: Rundung, Auslöschung, Zahlendarstellung) Gerade das Sensibilisieren für diese Probleme macht aber das Salz in der Suppe. Am besten doch noch mal beim Prof nachhaken. Ansonsten sind diese Systeme genau für diesen Anwendungsfall entworfen worden. Unser Student macht mit Matlab seine gesamte Signalverarbeitung für die Audiologie. Unglaublich, was man damit anstellen kann.

Wenn ich mich noch an meine Studienzeit zurückdenke, dann mussten wir in Numerik mit FORTRAN programmieren. Grausame Sache!

Da ihr die freie Wahl habt, such dir eine der funktionalen oder objektorientierten Programmiersprachen aus, es gibt da reichlich Auswahl. Persönlich würde ich, falls du dich ernsthafter mit der Programmierung beschäftigen willst, Java empfehlen. Portabel (bis hin zum Handy), die Basis ist leicht zu erlernen und es gibt eine Masse an frei verfügbaren Dokumentationen, Entwicklungsumgebungen und Bibliotheken.

Sich in das Thema Programmieren einzuarbeiten ist immer erst einmal hart, wenn man sich sonst damit nicht beschäftigt.

HTH

Kistenschrauber

Benutzeravatar
peschmae
Beiträge: 4844
Registriert: 07.01.2003 12:50:33
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: nirgendwo im irgendwo

Re: Programmieren

Beitrag von peschmae » 08.09.2008 01:54:11

kistenschrauber hat geschrieben:Da sich das Fach "Numerische Methoden" nennt, denke ich schon das es sich um eine "richtige" Programmiersprache handeln soll. MatLab, SciLab, Octave etc. werden da schon mal ausscheiden. Das sind math. Systeme, die viele Probleme der Numerik schon umgehen bzw. wegoptimieren. (Stichworte: Rundung, Auslöschung, Zahlendarstellung) Gerade das Sensibilisieren für diese Probleme macht aber das Salz in der Suppe.
Kommt natürlich immer darauf an was man gerade macht. In unserem Numerische Methoden Kurs haben wir Matlab verwendet. Ist auch das was ich empfehlen würde für solche Sachen.

Wenn du keine Lizenz kriegst von der Uni, dann halt Octave.

MfG Peschmä
"er hätte nicht in die usa ziehen dürfen - die versauen alles" -- Snoopy

jack1
Beiträge: 14
Registriert: 14.03.2007 22:12:14

Re: Programmieren

Beitrag von jack1 » 09.09.2008 18:40:15

Hi,
ich weiß es hat jetzt ein bischen gedauert...aber ich habe momentan keinen eigenen Rechner.
Dauert also immer ein bischen bis ich antworten kann.*sorry*

Ich danke euch schon mal für die Programmvorschläge.
Wir sollen aber, denke ich, wie Kistenschrauber auch schon gesagt hat,
"richtige" Programiersprachen benutzen.
Aber ich danke den anderen, die CAS- und Numerik-Programme vorgeschlagen haben,
auch für ihre Vorschläge (war ja eine super Idee mit Maxima, Octave,Scilab,... und habe es ja auch nicht ausgeschlossen.Außerdem wollte ich sowieso auch mal bei diesen Programmen etwas stöbern.Wobei ich Maxima und Octave schon kannte und mich wohl dann auch mal mit diesen Programmen auseinandersetzen werde..)

Perl und Java hatte ich auch schon in erwägung gezogen. Wollte aber jetzt erst mal hören, was die Profis so sagen. Außerdem sehe ich ja das auch viele andere Vorschläge kamen, die zwar meine Liste erweitern; aber ich habe eh nicht damit gerechnet das sie kürzer würde :D (was jetzt nicht negativ zu verstehen ist...!!!)

Dennoch möchte ich noch 2 Programme nennen die ich mir auch rausgesucht hatte.
Phyton und Pascal...würde mich intersieren warum keiner diese genannt hat?....oder meint ihr sie wären für meine Aufgabe eher nicht geeignet?

güße

jack1

roli
Beiträge: 3174
Registriert: 10.09.2003 17:39:58

Re: Programmieren

Beitrag von roli » 09.09.2008 21:08:49

Hi,
jack1 hat geschrieben:Dennoch möchte ich noch 2 Programme nennen die ich mir auch rausgesucht hatte.
Phyton und Pascal...würde mich intersieren warum keiner diese genannt hat?....oder meint ihr sie wären für meine Aufgabe eher nicht geeignet?
das ist eine 1a Frage um Glaubenskriege anzuzetteln ;-}
Mal andersherum ausgedrueck, mir faellt spontan keine Sprache ein, von der ich behaupten könnte das sie dafuer definitiv nicht geeignent ist. Man kann vielleicht danach unterscheiden, welche besser und welche schlechter geeignet ist, aber auch das ist ein grosses Stueck Geschmacksfrage, bzw. haengt dran welche Vorkenntnisse vorhanden sind.
Das vernuenfigste wird sein, wenn du die Sprache nimmst, bei der zu relativ schnell Erfolge erziehlst, das motiviert zum weitermachen. Ob die Erfolge jetzt daher kommen, das die Sprache "so einfach" ist, ob du ein Buch findest was DIR das ganze gut vermittelt, ein hilfsbereites Forum, was auch immer, Motivation ist das wichtigste! Auch wenn sich spaeter herausstellt das gerade die Sprache vielleicht doch nicht so ganz geeignet ist dafuer. Das was du bis dahin gelernt hast, wirst du auch in der Sprache nutzen koennen die du danach versuchst.
Roland


"Aber wenn du schon so unwissend bist, davon noch nicht gehört zu haben,
so will ich es doch als gut ansehen, daß du lieber einmal töricht fragst,
als weiterhin nichts von etwas zu wissen, das man doch wissen sollte."
aus "Die Edda des Snorri Sturluson", "Gylfis Täuschung"

Benutzeravatar
neuss
Beiträge: 2165
Registriert: 06.11.2004 17:56:02
Lizenz eigener Beiträge: MIT Lizenz

Re: Programmieren

Beitrag von neuss » 10.09.2008 01:30:38

Hallo,
jack1 hat geschrieben:Phyton und Pascal...würde mich intersieren warum keiner diese genannt hat?
Weil ich mich normalerweise bei solchen Threads lieber raushalte :wink:

Es spricht in deiner Situation aber einiges dafür free pascal in Verbindung mit Lazarus in die engere Auswahl zu nehmen.
Als Maschinenbaustudent ist es für dich ja wichtiger grundsätzliche Methoden zu lernen, als eine Programmiersprache in allen Details. Außerdem spricht für Lazarus, dass es auf vielen Systemen verfügbar ist und eine komplette Entwicklungsumgebung bereitstellt. Du kannst also schnell mit deiner eigentlichen Aufgabe anfangen und falls du Kommilitonen mit ins Boot kriegst, könnt ihr nach dem Motto "write once, compile anywhere" gemeinsam coden, auch wenn diese mit Windows oder Mac OS X arbeiten.

gruss neuss
stell dir vor, es geht, und keiner kriegt es hin.

jack1
Beiträge: 14
Registriert: 14.03.2007 22:12:14

Re: Programmieren

Beitrag von jack1 » 16.09.2008 20:32:23

Hi,

danke für eure Hilfe und Antworten.
Roli hat wohl recht; werd es wohl am besten selbst ausprobieren,
welche Sprache mir am besten liegt, aber so habe ich schon einmal eine gute Vorauswahl

grüße
Jack1

Benutzeravatar
Leonidas
Beiträge: 2032
Registriert: 28.04.2003 13:48:49
Lizenz eigener Beiträge: MIT Lizenz
Kontaktdaten:

Re: Programmieren

Beitrag von Leonidas » 19.09.2008 15:35:17

jack1 hat geschrieben:Dennoch möchte ich noch 2 Programme nennen die ich mir auch rausgesucht hatte.
Phyton und Pascal...würde mich intersieren warum keiner diese genannt hat?....oder meint ihr sie wären für meine Aufgabe eher nicht geeignet?
Pascal wurde nicht genannt, weil es in der FOSS-Welt kaum vertreten ist und Phyton nicht, weil es eine solche Sprache nicht gibt.

Ich würde, wenn es um eine general Purpose-Sprache geht Python vorschlagen, das hat auch alles mögliche dabei, ist einfach zu erlernen, ausreichend schnell. Es ist aber trotz allem eine mächtige Programmiersprache, mit der man auch Metaprogrammierung hinbekommt, zu einem gewissen grad auch funktional programmieren kann, Multimethods möglich sind etc.

Für sowas was du machst könnte NumPy als Paket interessant sein (es gibt dazu auch ein Buch), sowie solltest du dir SciPy und SymPy ansehen.
Wir wollten einen Marsch spielen, aber wir hatten nur Xylophone.

Antworten