Mupad - Glücksrad < Mathe-Software < Mathe < Vorhilfe
|
Status: |
(Frage) beantwortet | Datum: | 12:08 Do 12.07.2012 | Autor: | Gabbabin |
Aufgabe | Konstruiere mit Mupad ein Glücksrad mit 38 "wildangeordenten" Zahlen.
Die Zahlen sollen mit Hilfe einer Schleife auf das Glücksrad kommen. |
Also ich habe jetzt schon das Glücksrad fertig und es dreht sich auch. Aber ich weiß nicht, wie ich mit einer Schleife die Zahlen dort darstellen soll. Die dann, an exakt der richtigen Position sind und sich dann auch noch drehen.
Bisher habe ich sowas hier.
Zahlen:= [0,32,15,19,4,21,2,25,17,34,6,27,13,36,11,30,8,23,10,5,24,16,33,1,20,14,31,9,22,18,29,7,28,12,35,3,26]:
for i from 1 to nops(Zahlen) do
text[i]:= plot::Text2d(expr2text(Zahlen[i]), [1, cos(i*PI/160)]):
end_for;
plot(text[i] $ i=1..nops(text));
Aber so stellt er mir die Zahlen nicht in einem Kreis dar.
Ich hoffe ihr könnt mir helfen.
MfG
Gabbabin
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 15:36 Do 12.07.2012 | Autor: | leduart |
Hallo
ich kenne zwar mupad nicht, nehme aber an, dass in
plot::Text2d(expr2text(Zahlen[i]), [1, cos(i*PI/160)]):
[1, cos(i*PI/160)] für den platz steht, an dem geplottet wird.
damm müsste das aber
[ cos(i*PI/160), sin(i*PI/160)] heissen um auf einen Kreis zu kommen. der hat dann Radius 1 sonst muss da noch ein Faktor r der die Größe angibt rein, also [r* cos(i*PI/160), r*sin(i*PI/160)]
warum teilst du durch 160? und ich denke die Tahlen sollen nicht alle im gleichen Winkelabstand stehen?
wenn du mit den [mm] \pi/160 [/mm] arbeitest, hast du bei i=38 ja erst weniger als einen Viertelkreis, einen vollen erst, wenn du bei i=320 angkommen bist?
Gruss leduart
|
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 22:50 Sa 14.07.2012 | Autor: | abakus |
> Konstruiere mit Mupad ein Glücksrad mit 38
> "wildangeordenten" Zahlen.
> Die Zahlen sollen mit Hilfe einer Schleife auf das
> Glücksrad kommen.
>
> Also ich habe jetzt schon das Glücksrad fertig und es
> dreht sich auch. Aber ich weiß nicht, wie ich mit einer
> Schleife die Zahlen dort darstellen soll. Die dann, an
> exakt der richtigen Position sind und sich dann auch noch
> drehen.
> Bisher habe ich sowas hier.
>
> Zahlen:=
> [0,32,15,19,4,21,2,25,17,34,6,27,13,36,11,30,8,23,10,5,24,16,33,1,20,14,31,9,22,18,29,7,28,12,35,3,26]:
> for i from 1 to nops(Zahlen) do
> text:= plot::Text2d(expr2text(Zahlen), [1,
> cos(i*PI/160)]):
> end_for;
> plot(text $ i=1..nops(text));
>
>
> Aber so stellt er mir die Zahlen nicht in einem Kreis dar.
>
> Ich hoffe ihr könnt mir helfen.
>
> MfG
>
> Gabbabin
Bist du sicher, die Aufgabe richtig verstanden zu haben?
Du definierst "von Hand" eine Folge von 38 Zahlen.
Ich nehme aber an, du sollst einen Algoritmus schreiben, der die Zahlen von 1 bis 38 AUTOMATISCH zufällig anordnet.
Das könnte so gehen:
Bilde eine natürliche Zufallszahl zwischen 1 und 38 und schreibe sie in eine Liste.
Bilde eine neue Zufallszahl. Teste deine Liste durch, ob es diese neue Zahl schon gibt.
Falls nein: übergibt auch die neue Zahl an die Liste.
Falls ja: Bilde eine neue Zufallszahl und teste erneut, ob sie schon da ist...
usw.
ODER
Bilde eine Liste von 38 Zufallszahlen [mm] z_1 [/mm] bis z_38.
Sortiere diese Zahlen der Größe nach und schreibe dann von jeder sortierten Zahl in der gefundenen Reihenfolge den Index auf.
Wenn also z.B. gilt [mm] z_5
so beginnt dein Glücksrad mit 5; 34; 10; ...
Gruß Abakus
|
|
|
|