AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Mischen Funktion

Offene Frage von "testzugang"
Ein Thema von testzugang · begonnen am 16. Sep 2004 · letzter Beitrag vom 16. Sep 2004
 
Anthauri

Registriert seit: 1. Feb 2004
61 Beiträge
 
Delphi 6 Personal
 
#4

Re: Mischen Funktion

  Alt 16. Sep 2004, 16:39
Hi!

Auf den ersten Blick erscheint die "Random" Funktion die richtige Wahl, die eine Ganzzahl zurückgibt.

 Ergebnis := random(IconZahl-1) + 1; // ergibt einen Wert zwischen 0 und 29 + 1 also 1 bis 30 Hier sind aber zwei Dinge zu beachten:

a.)
Die Random Funktion liefert Ergebnisse von Null an. Da Deine Icons anscheinend ab eins gezählt werden, darf also nur ein Random(29) erzeugt werden. Das Ergebnis muss also danach um eins erhöht werden.

b.)
Random kann nicht wirklich zufällig Zahlen liefern.
Die Random Funktion würde so bei jedem Aufruf die gleiche Reihenfolge von "Zufallszahlen" liefern, daher muss vor dem Aufruf ein "Randomize;" her, dass in der Reihe von Zufallszahlen jeweils an einem anderen Punkt aufsetzt.

Ggf. kann jemand anderes die genaue interne Funktion der Zufallszahlenermittlung erklären.


Jetzt wären die Icons also zufällig. Das reicht aber wohl nicht, denn wenn ich mich an Menory recht erinnere gibt es jedes Kärtchenpaar nur einmal. Du musst also die gültigen IconZahlen irgendwie zwischenspeichern (zB. in einem Array oder einer Stringliste oder so) und dann die bereits benutzten Einträge herausnehemn um zu vermeiden, dass ein Kartenpaar mehrfach benutzt wird.

Bei meinem MP3 Player hatte ich für die Zufallswiedergabe ein ähnliches Vorhaben. Hier habe ich die Liednummern/Dateinamen mittels einer Stringlist zu Beginn ermittelt und dann nach und nach die benutzten aus der Liste gelöscht. Dann muss das Random sich aber natürlich auf die restliche Anzahl Einträge der Liste und nicht der Gesamtliedanzahl, bzw Iconanzahl beziehen.
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

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

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:36 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz