Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Schwierigkeitsgrad, aber wie!? (https://www.delphipraxis.net/24680-schwierigkeitsgrad-aber-wie.html)

fkerber 26. Jun 2004 15:43

Re: Schwierigkeitsgrad, aber wie!?
 
HI!

Delphi-Quellcode:
while (antwort = 1) and (frage_nr<15) do
begin
...
Ciao fkerber

Nicodius 26. Jun 2004 15:53

Re: Schwierigkeitsgrad, aber wie!?
 
^^ ... bei and, xor oder or immer eine klammer vor


wow das ist mir grad erst eingefallen :stupid:

MarkusB 26. Jun 2004 17:39

Re: Schwierigkeitsgrad, aber wie!?
 
Hi aerotech!

1. Du hast irgendwo “case” verloren.
2. Mehrere Anweisungen in einem case-Zweig klammert man mit „begin ... end“ ein.
3. Ein „Pseudo code“ ist kein richtiger code. Das ist eine Notiz, die für eine spätere
Implementierung in einer richtigen Programmiersprache (z.B. Pascal, C, ...) den Ablauf des
Programms veranschaulicht. Deswegen kannst Du ihn nicht 1:1 übernehmen!

Viele Grüße
Markus
:gruebel:

aerotech 26. Jun 2004 18:58

Re: Schwierigkeitsgrad, aber wie!?
 
Die Sache wird immer Haariger! :wall:

Wenn ich oben:

Delphi-Quellcode:
  frage_nr := 0;
   antwort := 1;

  while (antwort = 1) and (frage_nr<15) do
begin
   frage_nr := frage_nr + 1;
   case frage_nr of
   1..5: begin tquizfragen.first;
               tquizfragen.moveby(random(tquizfragen.RecordCount));
         end;

   6..9: begin tquizfragen2.first;
               tquizfragen2.moveby(random(tquizfragen2.RecordCount));
         end;

   {else begin tquizfragen3.first;
               tquizfragen3.moveby(random(tquizfragen3.RecordCount));
         }end;
     end;
   end;
Wie kann ich meinen Buttons das gleiche erzählen? Die stehen nämlich immernoch auf tquizfragen...
Schließlich müssen auch die wissen, dass nach 5 Fragen die nächste Schwierigkeitsstufe erreicht ist und ne' neue Tabelle zum einsatz kommt, so wie oben!

Delphi-Quellcode:
procedure TForm1.DBText1Click(Sender: TObject);
begin
  if tquizfragen.FieldByName('L1').AsInteger = 1 then begin
     tquizfragen.first;
     tquizfragen.moveby(random(tquizfragen.RecordCount));
     Stufen; // Führt die Prozedur "Stufen" aus, zu finden in
              // Zeile 88.
  end
  else
     Form4.Show;
end;

procedure TForm1.DBText2Click(Sender: TObject);
begin
  if tquizfragen.FieldByName('L2').AsInteger = 1 then begin
     tquizfragen.first;
     tquizfragen.moveby(random(tquizfragen.RecordCount));
     Stufen; // Führt die Prozedur "Stufen" aus, zu finden in
              // Zeile 88.
  end
  else
     Form4.Show;
end;

procedure TForm1.DBText3Click(Sender: TObject);
begin
  if tquizfragen.FieldByName('L3').AsInteger = 1 then begin
     tquizfragen.first;
     tquizfragen.moveby(random(tquizfragen.RecordCount));
     Stufen; // Führt die Prozedur "Stufen" aus, zu finden in
              // Zeile 88.
  end
  else
     Form4.Show;
end;

procedure TForm1.DBText4Click(Sender: TObject);
begin
  if tquizfragen.FieldByName('L4').AsInteger = 1 then begin
     tquizfragen.first;
     tquizfragen.moveby(random(tquizfragen.RecordCount));
     Stufen; // Führt die Prozedur "Stufen" aus, zu finden in
              // Zeile 88.
  end
  else
     Form4.Show;
end;

fkerber 27. Jun 2004 00:05

Re: Schwierigkeitsgrad, aber wie!?
 
HI!

Na wohl genauso :wink:
Halt eben noch 4 Case-of zusätzlich.
Aber ich prophezeihe dir, dass es so wohl nicht gehen wird, weil das durchzählen der Fragen am Anfang gemacht wird (beim Spiel starten) und dann die Variable auf 15 steht.
Also Variable mitlaufen lassen, die zählt, wo du wirklich grade bist.

Ciao fkerber


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:31 Uhr.
Seite 2 von 2     12   

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