Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Mutcha
Anmeldungsdatum: 09.10.2005 Beiträge: 9
|
Verfasst am: 09.10.2005, 18:19 Titel: |
|
|
Wenn ich nicht mehr antworte liegt das daran dass ich auf Klassenfahrt bin  |
|
Nach oben |
|
 |
Xolios aka Ray

Anmeldungsdatum: 07.12.2004 Beiträge: 589 Wohnort: Wildeshausen
|
Verfasst am: 09.10.2005, 18:20 Titel: |
|
|
Hallo.
randomize timer 'initialisieren
fragennummer%=int(rnd*6) 'Jetzt wird per zufall eine Zahl von 0 bis 6 Ausgewählt und in die Variable fragennummer% gespeichert
dann per IF Abfragen
If fragennummer%=1 then goto 1
If fragennummer%=2 then goto 2
If fragennummer%=3 then goto 3
If fragennummer%=4 then goto 4
.
.
.
u.s.w.
Übriegens ist es einfacher mit Subs zu Arbeiten.
Gruß
Ray _________________ www.ray-earth.de
Anm.: Neue ICQ
Zuletzt bearbeitet von Xolios am 09.10.2005, 18:21, insgesamt einmal bearbeitet |
|
Nach oben |
|
 |
jb

Anmeldungsdatum: 14.01.2005 Beiträge: 2010
|
Verfasst am: 09.10.2005, 18:21 Titel: |
|
|
Mach doch ein
Code: |
RANDOMIZE TIMER
z = INT(RND * 4) + 1
|
Das erzeugt eine (Fake-)Zufallszahl zwischen 1-4. Dann kannst du die ganzen Fragen bequem einbauen:
Code: |
SELECT CASE z
CASE 1
[Frageblock 1]
CASE 2
[Frageblock 2]
[...]
END SELECT
|
Einfacher wäre es natürlich noch, wenn du die Fragen in eine Datei schreibst, d.h. dir ein
Fragen-Format ausdenkst. Dann könntest du die Fragen von einer SUB aus stellen.
Nur so als Anregung. Für den Anfang ist aber das obige auch OK.
jb |
|
Nach oben |
|
 |
Mutcha
Anmeldungsdatum: 09.10.2005 Beiträge: 9
|
Verfasst am: 09.10.2005, 18:31 Titel: |
|
|
Danke  |
|
Nach oben |
|
 |
Mutcha
Anmeldungsdatum: 09.10.2005 Beiträge: 9
|
Verfasst am: 09.10.2005, 18:57 Titel: |
|
|
Ich habe dass jetzt so gemacht aber es kommen manche fragen doppelt.wie kann man das einstellen dass jede frage nur einmal kommt?
Zitat: | To be the man you must beat the man |  |
|
Nach oben |
|
 |
Mutcha
Anmeldungsdatum: 09.10.2005 Beiträge: 9
|
Verfasst am: 09.10.2005, 18:58 Titel: |
|
|
Mutcha hat Folgendes geschrieben: | Danke  |
|
|
Nach oben |
|
 |
Xolios aka Ray

Anmeldungsdatum: 07.12.2004 Beiträge: 589 Wohnort: Wildeshausen
|
Verfasst am: 09.10.2005, 19:02 Titel: |
|
|
Hallo.
Es gibt sowas wie einen Editier Button
Sowas macht man nicht das man 3-4Posts hintereinander schreibt.
Hier findest du alles zu Anfängerfragen:
http://www.antonis.de/faq/index.htm
Ich hab es dir nochmal rausgesucht. Ab jetzt guckst in den Link oben
bevor du fragst.
---
Frage deutsch
~~~~~~~~~~~~~~~
Wie erzeuge ich eine Serie von Zufallszahlen ohne Doubletten?
Question English
~~~~~~~~~~~~~~~
How to generate a series of random Nos without repetition?
Antwort
~~~~~~
[ von Tomas Antoni, 1999 ]
Siehe mein untenstehendes Programm RANDOMNO.BAS:
*** Programm RANDOMNO.BAS zur Erzeugung von Zufallszahlen ohne Doubletten:
DECLARE SUB RandomNo (randomfield%())
'****************************************************************************
' RANDOMNO.BAS = QBasic-Programm, erzeugt Zufallszahlen ohne Doubletten
' =====================================================================
'
' Beschreibung des Hauptprogramms:
' Das Hauptprogramm stellt eine Demo der eigenst„ndigen Subroutine RandomNo
' dar: Im Dialog wird die gew?nschte Anzahl von Zufallszahlen festgelegt.
' Dann wird ein Feld zum Ablegen dieser Zahlen dynamisch (mit REDIM) dimensio-
' niert. Dies Feld wird an die jetzt aufgerufene Subfunktion RandomNo ?berge-
' ben, die es mit Zufallszahlen von 1 bis <Anzahl> ohne Doubletten f?llt, d.h.
' jede Zahl kommt genau einmal vor.
'
' Verwendete Befehle: RANDOMIZE TIMER, RND, SHARED, REDIM, PRINT USING
'
' (c) Thomas Antoni, 26.09.99 - 27.09.99
' thomas@antonis.de
'****************************************************************************
'
'WIDTH 80, 50 '50-Zeilen-Bildschirmmodus
COLOR 0, 7 'schwarz auf hellgrau
DO
CLS
PRINT "Erzeugung von Zufallszahlen ohne Doubletten (jede Zahl kommt nur 1x vor)"
PRINT "========================================================================"
INPUT "Wieviele Zufallszahlen sollen erzeugt werden (1-32000): "; rananz%
REDIM randomfield%(1 TO rananz%) 'dynam.Feld: L„nge zur Laufzeit festgelegt
PRINT "Die Zufallszahlen von 1 bis"; rananz%; "(jede kommt genau 1x vor) lauten:"
CALL RandomNo(randomfield%())
FOR n% = 1 TO rananz%: PRINT USING " ##### "; randomfield%(n%); : NEXT n%
PRINT "ÛÛÛÛÛÛÛÛÛÛÛ Wiederholen... [beliebige Taste] Beenden... [Esc] ÛÛÛÛÛÛÛÛÛÛÛ";
DO: taste$ = INKEY$: LOOP WHILE taste$ = ""
LOOP WHILE taste$ <> CHR$(27)
COLOR 15!: CLS 'Schwarz/Weiá-Bildschirm wiederherstellen
END
'
SUB RandomNo (randomfield%())
'*****************************************************************************
' RandomNo = QBasic-Subroutine zum Erzeugen von Zufallszahlen ohne Doubletten
' ============================================================================
' šbergabeparameter:
' randomfield()= Feld das mit Zufallszahlen gef?llt werden soll. Die Feld-
' l„nge ist beliebig. Das Feld kann im aufrufenden Programm statisch oder
' dynamisch deklariert sein.
'
' Beschreibung:
' RandomNo erwartet, daá die Indices des Feldes von 1 bis <Anzahl Zufalls-
' zahlen> l„uft. Das Feld wird mit den Ganzzahlen 1 bis <Anzahl Zufalls-
' zahlen> in zuf„lliger Reihenfolge gef?llt. Jede der Zahlen kommt also
' genau einmal vor.
' RandomNo ist ideal geeignet f?r CD-Player (Shuffle-Funktion), Quiz-Pro-
' gramme, Vokabeltrainer und Mathe-Trainer, bei denen die zu h„ufige Wie-
' derholung von Musikst?cken bzw. Fragen unerw?nscht ist.
'
' (c) Thomas Antoni, 26.09.99 - 26.09.99
'*****************************************************************************
RANDOMIZE TIMER
rananz% = UBOUND(randomfield%) - LBOUND(randomfield%) + 1 'Anz. Feldelemente
FOR i% = 1 TO rananz%
DO
ranno% = INT(RND * rananz%) + 1 'Zufallszahl zwischen 1 und rananz%
fertig% = -1 'Vorbesetzung: keine Doublette (TRUE)
FOR k% = 1 TO i% - 1 'bereits erzeugte
IF ranno% = randomfield%(k%) THEN 'Doubletten ausschlieáen
fertig% = 0 'FALSE: ranno%=Doublette
EXIT FOR
END IF
NEXT k%
LOOP UNTIL fertig%
randomfield%(i%) = ranno%
NEXT i%
END SUB
---
Viel Erfolg!
Gruß
Ray _________________ www.ray-earth.de
Anm.: Neue ICQ |
|
Nach oben |
|
 |
Mutcha
Anmeldungsdatum: 09.10.2005 Beiträge: 9
|
Verfasst am: 09.10.2005, 19:22 Titel: |
|
|
Danke
Editiert durch Moderator (Sebastian): Spam entfernt. |
|
Nach oben |
|
 |
jb

Anmeldungsdatum: 14.01.2005 Beiträge: 2010
|
Verfasst am: 09.10.2005, 20:24 Titel: |
|
|
Langsam reicht's.
jb |
|
Nach oben |
|
 |
|