| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Rookie_BS Registriert seit: Sep 2004
Beiträge: 730
| wo ist der fehler in diesem kurzen script?
es soll ein array[9] mit zufallszahlen von 1 bis 9 gefüllt werden. dabei soll jede zahl (1 bis 9) nur einmal vorkommen. also das füllen klappt... nur bei einigen testläufen finden sich zahlen doch doppelt ![]() seit etwa 2stds starre ich da drauf und sehe den fehler nicht. ![]() HTML-Code: var verteilung:Array = new Array;
function randArray()
{
for(var a = 0; a < 9; a++)
{
var zufall:Number = (Math.floor(Math.random() * (9 - 1 + 1)) + 1);
for (z = 0; z <= _root.verteilung.length; z++)
{
if(_root.verteilung[z] == zufall)
{
z = 0;
zufall = (Math.floor(Math.random() * (9 - 1 + 1)) + 1);
trace(zufall)
}
}
_root.verteilung[a] = zufall;
}
trace(_root.verteilung)
}
randArray();
__________________ Wenn Sie glauben Ihnen ist klar was ich gesagt habe - dann haben Sie mich missverstanden! Alan Greenspan |
| | |
| | #2 (permalink) |
| Flashworker Registriert seit: Nov 2001 Ort: Wiesbaden
Beiträge: 10.945
|
Darf ich einen anderen Ansatz vorschlagen? ActionScript:
gruß |
| | |
| | #3 (permalink) |
| Rookie_BS Registriert seit: Sep 2004
Beiträge: 730
| sieht...
irgendwie einfacher aus als meinz THX!!!soweit sogut... umgesetzt auf mein array (?!) will das "shuffling" nicht so recht? ich nehme alles zurück - glaub ich > trace an falscher stelle! sry HTML-Code: for(var i:Number = 1; i<=9; i++)
{
_root.verteilung.push(i);
trace(_root.verteilung)
}
var shuffle:Function = function():Number
{
return random(2);
trace(_root.verteilung)
}
_root.verteilung.sort(shuffle); .
__________________ Wenn Sie glauben Ihnen ist klar was ich gesagt habe - dann haben Sie mich missverstanden! Alan Greenspan Geändert von Rookie_BS (18-01-2008 um 21:02 Uhr) |
| | |
| | #4 (permalink) |
| Rookie_BS Registriert seit: Sep 2004
Beiträge: 730
| funktioniert - supi...
noch mehr freuen würde ich mich wenn mir klar wäre wie genau das "shuffling" geht! array.sort(shuffle); ... verstehe ich auch nach studium der hilfe noch nicht in der parameterliste finde ich gar kein "durcheinandergewüfelt" ? is halt alles zum sortieren
__________________ Wenn Sie glauben Ihnen ist klar was ich gesagt habe - dann haben Sie mich missverstanden! Alan Greenspan Geändert von Rookie_BS (18-01-2008 um 21:27 Uhr) |
| | |
| | #5 (permalink) |
| Flashworker Registriert seit: Nov 2001 Ort: Wiesbaden
Beiträge: 10.945
|
Schau am besten mal in die Flash Hilfe. Du kannst eine Sortierfunktion angeben. Diese hat zwei Parameter, die verglichen werden. Je nach Rückgabe (0, -1, 1) wird dann sortiert. In diesem Fall brauchen wir das aber nicht, sondern nur eine Zufallsrückgabe. grüße |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |