größte Zahl bestimmen < Maple < Mathe-Software < Mathe < Vorhilfe
|
Status: |
(Frage) beantwortet | Datum: | 10:54 Di 29.01.2008 | Autor: | sie-nuss |
Hallo zusammen,
Ich hab ein kleines Problem bei Maple:
1.) ich weiß nicht, wie ich aus einer Menge, Liste oder Folge das größte Element bestimme.
Achso und:
2.) Ich habe so eine "Schleife" geschrieben, die mir ca. 200 Zahlen ausspuckt, er schreibt sie alle untereinander. Wie kann ich ihm sagen, er soll all die Zahlen als eine Menge oder eine Liste auffassen?
Und zum Schluss:
3.) kann ich auch das Hinschreiben von Sachen unterdrücken? Zum Beispiel wenn ich eingebe
>m := {seq(1 .. 1000)};
dann ist mein blatt erstmal voll ^^ Kann ich es nicht einfach definieren, ohne dass er mir da tausend Zahlen hinschreibt?
Na gut, es waren dann doch drei kleine Probleme, ich hoffe jemand kann mir helfen!
Viele Grüße,
sie-nuss
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 11:31 Di 29.01.2008 | Autor: | BKM |
Hallo.
Zu Frage 3) gibt es die Möglichkeit:
m := {seq(1 .. 1000)}: { Das wichtige ist hier der Doppelpunkt}
Hiermit wird die Ausgabe verhindert.
Die Frage 1 und 2 findest Du in der Maple_Hilfe unter List sehr gut beschrieben.
Beste Grüße.
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 16:56 Di 29.01.2008 | Autor: | sie-nuss |
Hallo!
Vielen Dank für die schnelle Hilfe! Der Doppelpunkt ist es also! ;)
Aber leider habe ich das mit dem Maximum einer Menge/Liste nicht rausfinden können. Könntest du die Hilfe vielleicht hier reinpasten?
Grüße und vielen vielen Dank!
sie-nuss
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 18:40 Di 29.01.2008 | Autor: | sie-nuss |
...also ich formuliers nochmal anders.
Ich hab ne Funktion in Maple definiert, und will diese an den Stellen 2,3,...,2000 auswerten.
Ich habe also eingegeben:
> L:=[2..2000];
aber wenn ich dann
> map(f,L)
eingebe, krieg ich ne Fehlermeldung. Wenn ich aber mein L nur als [3,4,8,9] oder so definiere dann hat er kein problem. Achso und was ich noch komisch finde: bei
>map(f,L) schreibt er die Ergebnisse untereinander (einmal hab ich es irgendwie mit den 2000 Werten geschafft, aber auch da stehen alle untereinander), und ganz unten, am Ende macht er [] , das versteh ich auch nicht.
Also ich möchte einfach meine Funktion auf die Werte 2,3,...,2000 anwenden und aus den Ergebnissen mir das größte sagen lassen.
Weiß jemand wie ich das mache?! Ich bin total verzweifelt.... :(
|
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 20:28 Di 29.01.2008 | Autor: | Laxomat |
Hallo sie-nuss,
erstmal definierst du dir die Liste falsch. Bei dir erzeugt er nur den "Wert" [2..2000], wie er da steht und das ist keine Liste. Deswegen kann map damit auch nichts anfangen und gibt die Fehlermeldung. Wenn du alle Zahlen von 2 bis 2000 haben möchtest, dann funktioniert das z.B. so:
L:=[seq(i,i=2..2000]:
Die Ausgabe von map(f,L) sollte dann wieder eine Liste sein mit den entsprechenden Funktionswerten.
Zum Maximum: Wenn alle Listenelemente nur einmal vorkommen und die Reihenfolge auch keine Rolle spielt, dann wäre der einfachste Weg, du würdest L nicht als Liste, sondern als Menge definieren. Also statt der eckigen Klammern ("[ ]") die geschwungenen verwenden ("{ }"). Dies hat neben dem Effekt, dass alle Elemente nach ihrer Grösse geordnet werden, d.h. das Maximum steht dann genau am Ende der Menge. Darauf lässt sich ganz einfach mit dem Index [-1] zugreifen. Also z.B.
L1:={seq(i,i=2..2000)}:
L2:=map(f,L1):
Maximum:=L2[-1];
Das sollte das von dir gewünschte Resultat liefern. (bei Bedarf ließe sich das alles noch auf einen Einzeiler verkürzen)
Gruss, Laxomat
|
|
|
|