AGB  ·  Datenschutz  ·  Impressum  







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

Eine zufällige Wahl treffen...

Ein Thema von malo · begonnen am 11. Nov 2004 · letzter Beitrag vom 11. Nov 2004
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von malo
malo

Registriert seit: 19. Sep 2004
2.115 Beiträge
 
#1

Eine zufällige Wahl treffen...

  Alt 11. Nov 2004, 14:57
Und zwar wollte ich ein kleines Quizprogramm schreiben (danke @Idee von 'nem anderen Thread, wo jemand nach etwas ähnlichem gefragt hat )

Nunja, da will ich dann auch verschiedene Fragen haben, ist ja klar. Die sollen dann jedoch per Zufallsgenerator ausgewählt werden. Aber wie kann ich dann eine zufällige Wahl treffen lassen? Vorerst will ich die Fragen auch vorher festgelegt haben, d.h. sie sind im Programm schon gespeichert und nicht irgendwo anders, wie in der registry oder in einer .ini .

Ähm... ja, wär nett, wenn mir da jemand helfen könnte
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Eine zufällige Wahl treffen...

  Alt 11. Nov 2004, 15:00
Stichworte für die Hilfe: Delphi-Referenz durchsuchenrandom und Delphi-Referenz durchsuchenrandomize.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Alexander

Registriert seit: 28. Aug 2002
Ort: Oldenburg
3.513 Beiträge
 
Turbo Delphi für .NET
 
#3

Re: Eine zufällige Wahl treffen...

  Alt 11. Nov 2004, 15:00
Dein Problem ist also der Zufallsgenerator, oder? Nun gut, schau einfach mal nach Delphi-Referenz durchsuchenRandom in der OH
Alexander
  Mit Zitat antworten Zitat
Benutzerbild von nailor
nailor

Registriert seit: 12. Dez 2002
Ort: Karlsruhe
1.989 Beiträge
 
#4

Re: Eine zufällige Wahl treffen...

  Alt 11. Nov 2004, 15:01
Irgendwo die Fragen speichern, sodass man per Index (Zahl) darauf zugreifen kann (zum Beispiel in ein _array_). Dann mit _Randomize_ den Zufallsgenerator anwerfen und dir mit _Random_ einen zufälligen Index aussuchen.
Michael N.
http://nailor.devzero.de/code/sharpmath/testing/ --- Tests, Feedback, Anregungen, ... aller Art sehr willkommen!
::: don't try so hard - it'll happen for a reason :::
  Mit Zitat antworten Zitat
Benutzerbild von malo
malo

Registriert seit: 19. Sep 2004
2.115 Beiträge
 
#5

Re: Eine zufällige Wahl treffen...

  Alt 11. Nov 2004, 15:29
Äh... nunja, das hat mich jetzt auch nicht besonders weitergebracht Oo

Meine Überlegung jetzt: Ich erstelle ein Array vom Typ String. Dann kommt ins OnCreate die Wertbestimmung. Es kommt also in jedes Array eine Frage. Kann mir jetzt jemand sagen, wie ich per Zufall jetzt einen Arraywert aufrufen kann, am besten mit Beispielcode? Oo
  Mit Zitat antworten Zitat
Benutzerbild von Kedariodakon
Kedariodakon

Registriert seit: 10. Sep 2004
Ort: Mönchengladbach
833 Beiträge
 
Delphi 7 Enterprise
 
#6

Re: Eine zufällige Wahl treffen...

  Alt 11. Nov 2004, 15:40
Delphi-Quellcode:
Function GetFrage( Const Nummer: Cardinal ): String;
Const cFragen: Array[ 0..2 ] Of String = ( 'FRAGE 00', 'FRAGE 01', 'FRAGE 02' );
Begin
  If Nummer In [ 0..2 ] Then Result   := cFragen[ Nummer ]
                        Else Result := 'Fragen Fehler...';
End;

Dann einfach irgendwo Die Function aufrufen...


Bye
Christian
  Mit Zitat antworten Zitat
Benutzerbild von malo
malo

Registriert seit: 19. Sep 2004
2.115 Beiträge
 
#7

Re: Eine zufällige Wahl treffen...

  Alt 11. Nov 2004, 15:52
Äh... ja, danke. Nur eins noch (auch, wenn ihr mich jetzt für blöd haltet... ): Wie rufe ich jetzt die Funktion auf?
  Mit Zitat antworten Zitat
Benutzerbild von Nikolas
Nikolas

Registriert seit: 28. Jul 2003
1.528 Beiträge
 
Delphi 2005 Personal
 
#8

Re: Eine zufällige Wahl treffen...

  Alt 11. Nov 2004, 15:54
Delphi-Quellcode:
// Den Zufallsgenerator aktivieren:
randomize;
// eine Zahl erstellen lassen:
arandomnumber:= random(50); // -> zwischen 0 und 49 [glaub ich]
Erwarte das Beste und bereite dich auf das Schlimmste vor.
  Mit Zitat antworten Zitat
Alexander

Registriert seit: 28. Aug 2002
Ort: Oldenburg
3.513 Beiträge
 
Turbo Delphi für .NET
 
#9

Re: Eine zufällige Wahl treffen...

  Alt 11. Nov 2004, 15:57
Ganz einfach: Die Funktion erwartet halt als Parameter die Nummer der Frage und liefert die Frage als String zurück.
Ich denke wenn du die Antworten auch noch mit einbauen willst, baust du dir ein Record, in dem die Frage und die Antworten (Antworten bspw. wieder in nem Array). Dann änderst du die Funktion halt so ab, dass das Array nicht vom Typ String ist, sondern hatlt von deinem neu definierten Typ...
Wie das mit den Records geht, findest du hier oder in der OH auch
Alexander
  Mit Zitat antworten Zitat
Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#10

Re: Eine zufällige Wahl treffen...

  Alt 11. Nov 2004, 16:30
Wieso nicht einfach :

Delphi-Quellcode:
var Frage : Array[1..50] of String;

procedure TForm1.Form.Create(Sender : TObject);
begin
  randomize;
  Label1.Caption := Frage[random(50)+1]; //Array muss natürlich vorher mit Fragen gefüllt werden
end;
Ist doch das einfachste oder ?
Michael
"Programmers talk about software development on weekends, vacations, and over meals not because they lack imagination,
but because their imagination reveals worlds that others cannot see."
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 03:15 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz