Einzelnen Beitrag anzeigen

Benutzerbild von xZise
xZise

Registriert seit: 3. Mär 2006
Ort: Waldbronn
4.303 Beiträge
 
Delphi 2009 Professional
 
#15

Re: Delphi - Code Hilfe

  Alt 27. Feb 2007, 09:41
Du musst die Funktion nicht kopieren, sondern nur verstehen, was du anscheindend nicht tust!
Der Befehl "mod" heißt ausgeschrieben "Modulo" (Siehe Wikipedia).

Und zwar gibt dir Modulo den Rest von zwei Ganzzahlen an.

Das Jahr 2000 nehmen wir als Beispiel:
2000 mod 1000 => 0
Dann mit dem Jahr 2007:
2007 mod 1000 => 7

Und dass musst du nun mit allen Überprüfen.
Das macht man, wenn man ein Neuling ist mit If.
Delphi-Quellcode:
if <Bed> then
begin
  <Anw. 1>;
  <Anw. 2>;
  .
  .
  .
end;
Zu Deutsch:
Code:
Wenn Bedingung (<Bed>) erfüllt, dann
beginne
  Anweisung 1
  Anweisung 2
  .
  .
  .
ende
Zusätzlich kannst du auch mit "else" überprüfen, ob der Fall nicht zutrifft:
Delphi-Quellcode:
if <Bed> then
begin
  <Anw. 1>;
  <Anw. 2>;
  .
  .
  .
end else if <Andere Bed> then
begin
  <Anw. 3>;
  <Anw. 4>;
  .
  .
  .
end;
else
begin
  <Anw. 5>;
  <Anw. 6>;
  .
  .
  .
end;
Zu Deutsch:
Code:
Wenn Bedingung (<Bed>) erfüllt, dann
beginne
  Anweisung 1
  Anweisung 2
  .
  .
  .
ende ansonsten wenn andere Bedingung (<Andere Bed>) erfüllt, dann
beginne
  Anweisung 3
  Anweisung 4
  .
  .
  .
ende ansonsten
beginne
  Anweisung 5
  Anweisung 6
  .
  .
  .
ende
Also musst du zuerst überprüfen, ob der Rest (siehe Modulo) von 1000 gleich 0 ist. Wenn dem so ist, dann ist es ein Schaltjahr... Ansonsten musst du überprüfen ob der Rest von 100 nicht 0 ist, oder der Rest von 4 wieder null ist:
if (<Bed 1>) or (<Bed 2>) then Logisches Oder
if (<Bed 1>) and (<Bed 2>) then Logisches Und

Das dürfte erstmal reichen!

PS: Bist du dir sicher, dass du erst 2-3 Tage mit Delphi programmiert hast? Ich würde erstmal so die Grundtechniken lernen. Die DSDT sollte dir da helfen.
Fabian
Eigentlich hat MS Windows ab Vista den Hang zur Selbstzerstörung abgewöhnt – mkinzler
  Mit Zitat antworten Zitat