Zufall

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

 

Zenon

Betreff: Zufall

BeitragSo, Mai 29, 2005 15:04
Antworten mit Zitat
Benutzer-Profile anzeigen
Mit

seedrnd Millisecs()

und

rand (1,6)

kann ich zufällige zahlen zwischen 1 u. 6 ermitteln.

wenn ich das 6 mal mache besteht die möglichkeit, dass es 6 mal die 3 ist.

ich will aber irgendwie die doppelten verhindern. irgendwie in abhängigkeit des ersten ergebnisses, dieses 1. ergebnis von der 2. suche ausschließen.

kann mir da jemand helfen???

ich will nämlich z.B. 5 dieser 6 zufallszahlen drucken, ohne dass es doppelte gibt.

bitte, bitte, helft mir.
ich hoffe ihr versteht mich
  • Zuletzt bearbeitet von Zenon am So, Mai 29, 2005 15:06, insgesamt 2-mal bearbeitet
 

hitokiri

BeitragSo, Mai 29, 2005 15:28
Antworten mit Zitat
Benutzer-Profile anzeigen
also....auch wenn ich nich verstehe wieso du das willst... hier ein lösungsansatz:

speichere die ergebnisse in einem array mit einer dimension und grösse=anzahl durchgänge.

nach rnd vergleichen, ob die zahl schonmal vorkam -> array

wenn ja, dann neu generieren und wieder prüfen

wenn nein die zahl im array an der stelle des momentanen versuchs speichern

Jack

BeitragSo, Mai 29, 2005 18:32
Antworten mit Zitat
Benutzer-Profile anzeigen
schau dir mal das programm auf der buch-cd vom buch "spiele programmieren" an. es heisst "vokabel". dort werden die vokabeln in einer datei gespeichert und die antwort unten drunter.

Alfadur

BeitragMo, Mai 30, 2005 0:21
Antworten mit Zitat
Benutzer-Profile anzeigen
hitokiri hat schon recht ...

BlitzBasic: [AUSKLAPPEN]
SeedRnd MilliSecs()
Dim values(5)

For x=0 To 5
Repeat
ok=True
val=Rand(1,6)
For y=0 To 5
If values(y)=val Then ok=False
Next
Until ok=True
values(x)=val
Next

For x=0 To 5
Print values(x)
Next
A Cray is the only computer that runs an endless loop in less than four hours.

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group