(07) Folgen, Listen, Mengen

Aus Augenbit

Beobachtungen bisheriger Mapleausgaben

Ausgabe als eine sogenannte Folge (Kennzeichen: Durch Kommata getrennte Ausdrücke)

Ausgabe von Variablenbelegung:

> a:=1:b:=2:c:=3:

> a,b,c;

Ausgabe von Lösungen

> solve(x^2-4*x+1);

Ausgabe als eine Menge (Kennzeichen: Geschweifte Klammer)

> solve(x^2-4<0,{x});

> solve({x+y=3,x-y=5},{x,y});

Hier mussten wir bei der Eingabe schon dafür sorgen, dass eine Menge ausgegeben wird:

Bei der Ungleichung setzten wir das x in die geschweifte Klammer, um eine lesbare Form der Lösungsmenge zu erhalten. Bei dem LGS zwang uns die Syntax des Befehles solve dazu.

Fazit: Maple scheint vorzugsweise seine Ergebnisse als Folgen auszugeben.

Erzeugen von Folgen und Mengen

Folgen und der Zugriff auf einzelne Elemente

folge1:=1,2,3,4,5;folge2:=a,2,b,4,ich,du,234,x^2-x+sqrt(7);

Prima ist, dass auf die Elemente einer Folge zugegriffen werden kann:

> Drittes_Element_Folge1:=folge1[3];

> Sechstes_Element_Folge2:=folge2[6];

Worauf greift folgender Befehl zu ? Beachte die Syntax: Zwei Punkte ohne Leerzeichen.

> folge2[5..7];

Mengen

> menge1:={1,2,3,4,5,7};

Achtung: Mehrfach auftretende Elemente schmeißt Maple raus:

> menge2:={2,4,6,4,8,2};

Man kann eine Folge auch in eine Menge verwandeln: > menge3:={folge2};

Vergleiche die Anordnung der Elemente von menge3 mit folge2: Hier arbeitet Maple willkürlich. Somit sind Mengen ziemlich unpraktisch, da man nicht mit Sicherheit auf ein bestimmtes Element zugreifen kann. Bei Folgen bleibt die Ordnung erhalten.

Dritte Möglichkeit: Listen

Listen und Zugriff auf einzelne Elemente

Setzt man eine Folge in eine eckige Klammer [ ], entsteht aus der Folge eine Liste. (Alt Gr 8 bzw 9)

> liste1:=[1,5,10,3,2];

> liste1[2];

> liste1[5];

> liste1[2..3];

Achtung: Es wird eine Liste erzeugt.

> liste1[23];

Klar, dieses Element gibt es nicht.

Auch aus Folgen können Listen erzeugt werden.

> listeA:=[folge2];

Listen können Elemente von Listen sein (Verschachtelung)

> liste2:=[[1,2],[3,4],[a,IKG]];

> liste2[3];

Wir denken sofort an Punkte im Koordinatensystem: P [x,y].

Vorteile von Listen

Sortieren der Elemente

> sort(liste1);

Lösungen von Gleichungen (die Maple ja als Folge ausgibt) sofort als Liste ausgeben lassen

> gl:=3*x^2-5*x-2=0;L:=[solve(gl)];

Wir haben einen leichten Zugriff auf einzelne Lösungen

> l[1]:=L[1];l[2]:=L[2]; Wir können nun sogar zwecks schönerer Schreibweise die Variablen mit einem Index versehen:

> subs(x=l[1],gl);

Wenn die Lösungsmenge als Liste ausgeben wird, steht bei einer leeren Lösungsmenge nicht nichts, sondern eine leere Liste da:

> L_Menge:=[solve({x-2*y=-2,x-2*y=2},{x,y})];

Befehl seq zur Erzeugung von Folgen

Unsere bisherigen Folgen waren entweder von Maple erzeugt oder von uns über die Tastatur eingegeben. Maple besitzt einen Befehl, der Folgen erzeugt (die dann logischerweise einer Regel unterliegen)

Beispiele für die Anwendung von seq

Einfache Anwendung

Folge der natürlichen Zahlen von 1 bis 10

> seq(i, i=1..10);

Folge der ersten 15 Quadratzahlen

> seq(t^2,t=1..15);

> seq(x^r,r=1..5);

> seq(b[i],i=0..4);

Blick auf die Schrittweite

Beobachtung der Schrittweite: Wie groß ist diese bei dem Befehl seq ?

> seq(i,i=3/2..4);

Manipulation der Schrittweite: Start und Endwert durch eine Folge erzeugen.

> seq(i,i=seq(i/4,i=0..10));

Variante: Nicht Start und Endwert angeben, sondern eine

Liste:

> seq(3*i-i^2,i=[2,4,-5,a,x+1]);

Kleines Meisterstück

Überblick behalten: Wir erzeugen Punkte [x,y] der Normalparabel (zum Zeichnen geeignet).

> M:=[seq(x,x=-5..7)];Punkte:=[x,x^2];Paare:=[seq(Punkte,x=M)];

Wir verwandeln die Folge gleich in eine Liste.

> AchtesPaar:=Paare[8];

Vielleicht ist seq unser bisher schwerster Maple-Befehl. Schau dir noch einmal ganz genau die obigen Beispiele an. Wichtig ist die Struktur von seq. Seq ( Ausdruck mit einer Variablen , Variable = ...).

Man hätte Punkte der Normalparabel auch in einem Ausdruck schreiben können: Die Frage ist nur, ob wir den Überblick noch behalten (hätten): > NP_Pare:=[seq([x,x^2],x=-5..7)];


Kurzer Ausblick: Lassen wir Maple Zeichnen

> plot(Paare); So einfach geht es wirklich !!

> Klicke einmal auf die Grafik (sie bekommt einen Rahmen), klicke dann die rechte Maustaste. Maple liefert ein sogenantes Kontextmenü. Wähle Style/Point aus. Nun enthält die Zeichnung nur die Punkte, die wir oben mit dem Befehl seq erzeugt haben.

Zeichnen beliebiger Folgen mit Hilfe von seq

Zunächst wird eine beliebige Folge definiert:

> F:=t->1/(2*t);

Und anschließend der plot-Befehl erteilt:

> plot([seq([t,F(t)],t=1..15)],style=point);

Kopendium:

Media:07_Folgen,_Listen,_Mengen.mws

Bei Verwendung von Firefox Worksheet.mws mit rechter Maustaste (Kontextmenütaste) herunterladen.


Beispiele