Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 07-09-2004, 10:12   #1 (permalink)
Neuer User
 
Registriert seit: Nov 2003
Beiträge: 53
Konkretes Problem mit Array & Schleife & Zufallszahlen

Hallo zusammen,

ich brauche folgende Schleife aber irgendwie klappst einfach garnicht. Ich versuche mal das Problem verbal zu beschreiben:

Ich habe ein Programm geschrieben um japanische Schriftzeichen (3000 Stück) zu lernen. Ich habe einen Array mit 3000 Werten, die jeweils zwischen 0 und 10 liegen, wobei der Wert zwischen 0 und 10 zeigt wieoft die Vokabel schon gewusst wurde. Alle werte werden als local shared objects gespeichert.

Das funktioniert alles soweit.

Es soll jedoch eine zufällige Stelle im Array ausgesucht werden (zB. 1592) und leider ist der Zufall zu zufällig: Ich möchte den lieber gelenkt haben um Kummulierungen zu vermeiden.

Der relevante Bereich im Array wird durch die Variablen minimal und maximal bestimmt.

--------

Das brauche ich:

1.) Der Durchschnitt der Werte der relevanten Positionen im Array. (Eine Zahl zwischen 0 und 10)

2.) Eine Schleife, die sagt:

Suche zufällig eine Stelle im Array, begrenzt durch minimal und maximal

Schau nach ob der Wert dieser Position kleiner gleich dem Durchschnitt aller Werte der relevanten Positionen im Array ist.

Wenn ja, dann geb der Variablen wert diesen Nummernwert.

Wenn nicht, dann gehe eine Stelle im Array nach oben und überprüfe wieder.

Gehe jedoch nicht eine Stelle nach oben, wenn diese Stelle maximal überschreiten würden.

Falls diese ganze Prozedur 5mal Ergebnislos durchgeführt wurde, dann nehm einfach irgendeine Zufallszahl.

----

Beispiel:

Array = [3,0,5,2,1,8,9,0,0,1]

minimal = 3
maximal = 8

Relevanter Bereich im Array = [5,2,1,8,9,0]

Durchschnitt: (5+2+1+8+9+0)/6 = 4,1666666666666666666666666666667

Zufälliger Wert: 4

Führt zur 4 relevanten Stelle im Array = 8
(minimal+zufall-1)

8 ist größer als 4,166666 also weiter


Zufälliger Wert: 2

Führt zur 2 relevanten Stelle im Array = 2
(minimal#zufall-1)

2 ist kleiner als 4,1666666 als Ende und

Variable Wert = 2

---------------


As
AS23 ist offline   Mit Zitat antworten
Alt 07-09-2004, 11:27   #2 (permalink)
aka stauby
 
Benutzerbild von webdust
 
Registriert seit: Mar 2004
Ort: Würzburg
Beiträge: 705
Was hast du bislang versucht? Eigentlich sollte das doch gar nicht so schwierig sein, daher hier ein paar Code-Fragmente als Denkanstoß:

ActionScript:
  1. summe = 0:
  2. for(i=0;i<array.length;i++) {
  3. summe +=array[i];
  4. }
  5.  
  6. durchschnitt = summe/array.length;

Und für die Abfrage:

ActionScript:
  1. falsch =0; //anzahl der Fehlgriffe bei der Auswahl das Array-Feldes
  2.  
  3. a = random(array.length);
  4.  
  5. if(array[a] < durchschnitt || falsch == 5) {
  6.    ...
  7. }
  8.  
  9. else {
  10. falsch++;
  11. ...
  12. }
__________________
"The things you own end up owning you."
webdust ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 20:37 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele