Eine der einfachsten "Schleifenähnlichen" Funktionen, der in DERIVE häufige Verwendung erfährt, ist der VECTOR-Befehl. Für die Verwendung von Element-Ketten (Vektoren - in den meisten Programmiersprachen als Arrays bezeichnet) bietet DERIVE darüber hinaus aber noch eine ganze Palette von Befehlen an.
Funktionen und Operatoren für Vektoren / Arrays:
DIM |
Bestimmt die Dimension eines Vektors = Anzahl seiner Elemente |
VECTOR(u,k,m,n) |
ergibt den Vektor [u(m), u(m+1), ..., u(n)]. (Falls der dritte Parameter m fehlt, wird m = 1 gesetzt. Die Schrittweite von k (standardmäßig auf 1 gestellt) kann durch einen fünften Parameter s in der vector-Funktion festgelegt werden (VECTOR(u,k,m,n,s). |
VECTOR(u,k,z) |
ergibt den Vektor [u(z1, u(z2, ..., u(zn)], wobei s ein Vektor z = [z1, z2, ..., zn]bzw. eine Menge z = {z1, z2, ..., zn} ist. |
v SUB n |
ergibt das n-te Element des Vektors v (in der Eingabezeile auch über STRG + B bzw. über das Symbol ↓ erreichbar). |
|
FIRST(v) |
ergibt das erste Element eines Vektors v. |
REST(v) |
ergibt den Vektor v ohne das erste Element. |
DELETE(v,n) |
löscht aus dem Vektor v das n-te Element (wird n weggelassen, so wird es als 1 angenommen; ist n = -1, wird das letzte, für n = -2 das vorletzte Element usw. weggelassen). |
INSERT(a,v,n) |
fügt in den Vektor v ein Element a vor dem n-ten Element ein. |
APPEND(v,w) |
an den Vektor v werden die Elemente von w hinzugefügt. |
ADJOIN(a,v) |
fügt a am Anfang des Vektors v ein, a ist damit neues erstes Element von v. |
REPLACE(a,v,n) |
ersetzt im Vektor v das n-te Element durch a. |
SELECT(u,k,v) |
ergibt jenen Vektor, der aus jenen Komponenten k des Vektors v besteht, für die u(k) eine wahre Aussage liefert. |
REVERSE(v) |
liefert eine Kopie von v, bei der die Komponenten genau in umgedrehter Reihenfolge auftreten. |
SORT(v) |
ergibt den (aufsteigend) sortierten Vektor - SORT kann durch Angabe von Parametern auch noch variiert werden (siehen DERIVE-Hilfe!) |
|
TABLE(u,k,m,n) |
ergibt den Vektor [[m,u(m)],[m+1,u(m+1)],..,[n,u(n)]]. (Falls der dritte Parameter m fehlt, wird m = 1 gesetzt. Die Schrittweite von k kann durch einen fünften Parameter s in der Table-Funktion anders festgelegt werden (Standard = 1). |
Hinweis - die besprochenen Funktionen gelten auch für Matrizen. Eine Matrix ist nichts anderes ist als ein Vektor von Vektoren gleicher Länge.
|
Übungen:
- Erzeugen Sie die ersten 20 Elemente der Folge an mit an=1/2^n. Erzeugen Sie zur selben Folge mit Hilfe eines VECTOR-Befehls die Elemente 21, 22, 23, 25, 28, 32.
- Geben Sie den folgenden Vektor mittels VECTOR-Befehl ein: [0,-2,4,-6,8,-10,12,-14,16,-18,20,-22,24,-26]
- Erzeugen Sie eine Funktion, die die Eckpunkte eines regelmäßigen n-Ecks mit Hilfe des VECTOR-Befehls erzeugt (Radius des Umkreises = 5). Plotten Sie mit Hilfe der Funktion ein regelmäßiges 12-Eck.
|
DERIVE-Datei
 |
Beispiele - TABLE-Befehl
Der Befehl TABLE(u,i,n) ist eine spezielle Erweiterung des VECTOR-Befehls. Man könnte ihn ersetzen durch VECTOR([i,u(i)],i,n).
Wertettabelle einer Funktion:
Erzeuge für die Funktion f(x):=x^2-x-1 eine Wertetabelle für x = -3..3. Ergänze mit Hilfe des ADJOIN-Befehls die Wertetabelle um die Beschriftung der Spalten mit x und f(x).
Hinweis - Texte (wie beim ADJOIN-Befehl) müssen in DERIVE in der Eingabezeile immer in Anführungszeichen gesetzt werden! Diese werden nach Verlassen der Eingabezeile im Algebrafenster nicht mehr angezeigt.
Pascalsches Dreieck:
Konstruiere die ersten 8 Zeilen des Pascalschen Dreiecks! Verwende dazu die Kombinatorikfunktion COMB(n,k) = n!/(k!·(n-k)!)

|