Einzelnen Beitrag anzeigen

Delphi.Narium

Registriert seit: 27. Nov 2017
2.415 Beiträge
 
Delphi 7 Professional
 
#25

AW: Erstellen eines Datum-überprüfers

  Alt 16. Mai 2021, 18:17
Zum Spaß noch ein Ansatz:
Delphi-Quellcode:
var
  Tag : Integer;
  Monat : Integer;
  Jahr : Integer;
  TagOK : Boolean;
  MonatOk : Boolean;
  JahrOk : Boolean;
  IstSchaltjahr : Boolean;
begin
  write('Bitte den Tag eingeben ');
  readln(Tag);
  write('Bitte den Monat eingeben ');
  readln(Monat);
  write('Bitte das Jahr eingeben ');
  readln(Jahr);
  TagOk := (Tag >= 1) and (Tag <= 31);
  MonatOk := (Monat >= 1) and (Monat <= 12);
  JahrOk := (Jahr >= 1) and (Jahr <= 3000);
  IstSchaltJahr := (Jahr mod 4 = 0) and (Jahr mod 100 <> 0) or (Jahr mod 400 = 0);
  if TagOk and MonatOk and JahrOk then
  begin
    case Monat of
      2: case IstSchaltjahr of
           true : TagOk := (Tag <= 29);
           false : TagOk := (Tag <= 28);
         end;
      1, 3, 5, 7, 8, 10, 12 : TagOk := (Tag <= 31);
      4, 6, 9, 11 : TagOk := (Tag <= 30);
    end;
  end;
  writeln('Als Datum wurde der ', Tag,'.', Monat,'.', Jahr,' eingegeben:');
  case TagOk of
    true : writeln('Der Tag ', Tag, ' ist gültig.');
    false : writeln('Der Tag ', Tag, ' ist ungültig.');
  end;
  case MonatOk of
    true : writeln('Der Monat ', Monat, ' ist gültig.');
    false : writeln('Der Monat ', Monat, ' ist ungültig.');
  end;
  case JahrOk of
    true : writeln('Das Jahr ', Jahr, ' liegt im zulässigen Bereich.');
    false : writeln('Das Jahr ', Jahr, ' liegt ausserhalb des zulässigen Bereiches.');
  end;
  case JahrOk and IstSchaltjahr of
    true : writeln('Bei dem Jahr ', Jahr,' handelt es sich um ein Schaltjahr.');
    false : writeln('Bei dem Jahr ', Jahr,' handelt es sich nicht um ein Schaltjahr.');
  end;
  readln;
end.
@KodeZwerg:

Es geht erstmal darum die Grundzüge des Programmierens und die Umsetzung einer Aufgabenstellung in entsprechende Logik zu lernen. Das dazu Delphi benutzt wird, ist nachrangig. Daher ist es momentan noch nicht hilfreich in Delphi vorhanden Funktionalitäten zu nutzen, auch wenn dies eigentlich naheliegend erscheint.

Die delphieigenen Funktionen kann man dann gerne zur Verifizierung der eigenen Ergebnisse nutzen. Dann lernt man direkt beides

Geändert von Delphi.Narium (16. Mai 2021 um 18:34 Uhr) Grund: Wie immer: Schreibfehler
  Mit Zitat antworten Zitat