Difference between revisions of "ApCoCoA-1:Examples Tutorial De Programming"
(New page: == CoCoA-Programmierung == Programme in CoCoA werden in einer eigenen Programmiersprache namens CoCoAL geschrieben, welche natürlich ihre eigen Syntax hat. Teile dieser Syntax kennen wir...) |
|||
(One intermediate revision by the same user not shown) | |||
Line 4: | Line 4: | ||
<center>[[Image:case_sens.png]]</center> | <center>[[Image:case_sens.png]]</center> | ||
− | Neue Befehle werden in | + | Neue Befehle werden in CoCoA mit <tt>Define ... EndDefine;</tt> erzeugt. Auch hier kommt nur ein Semikolon an das Ende von <tt>EndDefine</tt>, da dies eine zweiteiliger Befehl ist. Ein CoCoA-Programm wäre z.B. |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | <code> | |
− | + | Define MeineFunktion(A,I) | |
− | + | B:=A^I; | |
− | + | Return B;\\ | |
+ | EndDefine; | ||
+ | </code> | ||
− | + | <center>[[Image:bsp_define.png]]</center> | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | Der Befehl <tt>Return B;</tt> gibt nicht nur das Ergebnis <tt>B</tt> aus, er beendet auch das Programm, mit <tt>Return;</tt> springt man also aus der Funktion ohne ein Ergebnis auszugeben. | |
+ | <tt>A</tt> und <tt>I</tt> sind die Übergabe-Parameter der Funktion. Das in der Funktion definierte <tt>B</tt> ist eine so genannte '''lokale Variable''', d.h. sie existieren nur innerhalb des Programms. | ||
+ | <center>[[Image:bsp_lokal.png]]</center> | ||
− | + | '''Globale Variablen''' sind auch außerhalb der Funktion sichtbar. Mit dem Präfix <tt>MEMORY.</tt> werden lokale Variablen zu globalen Variablen verwandelt. | |
+ | <center>[[Image:bsp_global.png]]</center> | ||
+ | Die Liste aller globalen Variablen kann mit <tt>GlobalMemory();</tt> aufgerufen werden. | ||
− | + | Natürlich ist es möglich, Funktionen ohne <tt>Return</tt> zu schreiben, man muss sich dann aber darüber im Klaren sein, dass man kein Ergebnis erhält. Es sei denn, man verwendet globale Variablen. | |
− | |||
− | |||
− | |||
− | |||
− | + | == userinit.coc == | |
− | Um Programme, auch kleine Programme, verständlich für jedermann zu gestalten, sollten sie kommentiert werden. Hierfür bietet | + | Um eine selbstgeschriebene Funktion in CoCoA zur Verfügung zu stellen, kann man sie entweder eingeben und abschicken (wie im Kapitel [[ApCoCoA:GUI_Tutorial_De|GUI und jetzt?]] beschrieben) oder man speichert seine selbstgeschriebenen Programme in einer Datei <tt>MeineDatei.coc</tt> ab und kann sie (wenn man die Funktionen nur manchmal braucht) bei Bedarf öffnen und ausführen. Wenn man jetzt Programme geschrieben hat, die man häufig braucht, so speichert man diese in einer Datei ab und trägt den Datei-Namen in die <tt>userinit.coc</tt> (welche sich im CoCoA-Installationsordner befindet) wie folgt ein: |
− | + | <center> | |
− | + | <tt><< "MeineDatei.coc";</tt> | |
− | Derartige Kommentare können über mehrere Zeilen gehen. | + | </center> |
− | Alles ( | + | In diesem Fall muss die Datei <tt>MeineDatei.coc</tt> im CoCoA-Installationsordner liegen. Beim Aufruf von CoCoA werden nun die in <tt>MeineDatei.coc</tt> definierten Programme automatisch geladen und stehen somit zur Verfügung. |
+ | |||
+ | |||
+ | == Kommentare == | ||
+ | |||
+ | Um Programme, auch kleine Programme, verständlich für jedermann zu gestalten, sollten sie kommentiert werden. Hierfür bietet CoCoA drei Möglichkeiten an. | ||
+ | |||
+ | <tt>/* ''Kommentar'' */</tt> Derartige Kommentare können über mehrere Zeilen gehen. | ||
+ | Alles (<tt>''Kommentar''</tt>), was zwischen <tt>/*</tt> und <tt>*/</tt> steht, wird als Kommentar | ||
betrachtet und hat keine Auswirkungen auf den Rest der eingegebenen Befehle. | betrachtet und hat keine Auswirkungen auf den Rest der eingegebenen Befehle. | ||
− | + | ||
− | + | <tt>// ''Kommentar''</tt> Diese Kommentare sind nur die aktuelle Zeile lang. Nur der Text in derselben Zeile gilt als | |
Kommentar. | Kommentar. | ||
− | + | ||
− | + | <tt>-- ''Kommentar''</tt> Diese Art von einzeiligen Kommentar steht meistens direkt hinter einem Befehl. | |
− | + | ||
+ | |||
+ | ---- | ||
+ | |||
+ | Weiter geht's im Kapitel [[ApCoCoA:Examples_Tutorial_De_Loops|Schleifen und Irrwege]]. | ||
+ | |||
+ | ---- | ||
Latest revision as of 19:14, 17 July 2008
CoCoA-Programmierung
Programme in CoCoA werden in einer eigenen Programmiersprache namens CoCoAL geschrieben, welche natürlich ihre eigen Syntax hat. Teile dieser Syntax kennen wir ja schon, Befehle werden immer groß geschrieben und mit einem Semikolon beendet, nur Unbestimmte werden klein geschrieben. Diese Programmiersprache ist case sensitive, d.h. die Groß- und Kleinschreibung ist von großer Bedeutung.
Neue Befehle werden in CoCoA mit Define ... EndDefine; erzeugt. Auch hier kommt nur ein Semikolon an das Ende von EndDefine, da dies eine zweiteiliger Befehl ist. Ein CoCoA-Programm wäre z.B.
Define MeineFunktion(A,I)
B:=A^I;
Return B;\\
EndDefine;
Der Befehl Return B; gibt nicht nur das Ergebnis B aus, er beendet auch das Programm, mit Return; springt man also aus der Funktion ohne ein Ergebnis auszugeben.
A und I sind die Übergabe-Parameter der Funktion. Das in der Funktion definierte B ist eine so genannte lokale Variable, d.h. sie existieren nur innerhalb des Programms.
Globale Variablen sind auch außerhalb der Funktion sichtbar. Mit dem Präfix MEMORY. werden lokale Variablen zu globalen Variablen verwandelt.
Die Liste aller globalen Variablen kann mit GlobalMemory(); aufgerufen werden.
Natürlich ist es möglich, Funktionen ohne Return zu schreiben, man muss sich dann aber darüber im Klaren sein, dass man kein Ergebnis erhält. Es sei denn, man verwendet globale Variablen.
userinit.coc
Um eine selbstgeschriebene Funktion in CoCoA zur Verfügung zu stellen, kann man sie entweder eingeben und abschicken (wie im Kapitel GUI und jetzt? beschrieben) oder man speichert seine selbstgeschriebenen Programme in einer Datei MeineDatei.coc ab und kann sie (wenn man die Funktionen nur manchmal braucht) bei Bedarf öffnen und ausführen. Wenn man jetzt Programme geschrieben hat, die man häufig braucht, so speichert man diese in einer Datei ab und trägt den Datei-Namen in die userinit.coc (welche sich im CoCoA-Installationsordner befindet) wie folgt ein:
<< "MeineDatei.coc";
In diesem Fall muss die Datei MeineDatei.coc im CoCoA-Installationsordner liegen. Beim Aufruf von CoCoA werden nun die in MeineDatei.coc definierten Programme automatisch geladen und stehen somit zur Verfügung.
Kommentare
Um Programme, auch kleine Programme, verständlich für jedermann zu gestalten, sollten sie kommentiert werden. Hierfür bietet CoCoA drei Möglichkeiten an.
/* Kommentar */ Derartige Kommentare können über mehrere Zeilen gehen. Alles (Kommentar), was zwischen /* und */ steht, wird als Kommentar betrachtet und hat keine Auswirkungen auf den Rest der eingegebenen Befehle.
// Kommentar Diese Kommentare sind nur die aktuelle Zeile lang. Nur der Text in derselben Zeile gilt als Kommentar.
-- Kommentar Diese Art von einzeiligen Kommentar steht meistens direkt hinter einem Befehl.
Weiter geht's im Kapitel Schleifen und Irrwege.