@Delphi.Narium Vielen Vielen Dank für deine Hilfe, ich müsste es jetzt hinbekommen haben. Wenn ihr noch einen Fehler entdeckt könnt Ihr mich gerne darauf hinweisen.
Jetzt fehlt mir nur noch das Integrieren einer Berechnung ob an diesem Tag Ostern ist, dann kann ich es abgeben.
Delphi-Quellcode:
{$APPTYPE CONSOLE}
{$R+,Q+ X-}
uses
System.SysUtils;
var
Tag: integer;
Monat: integer;
Jahr: integer;
begin
write('Bitte den Tag eingeben ');
readln(Tag);
write('Bitte den Monat eingeben ');
readln(Monat);
write('Bitte das Jahr eingeben ');
readln(Jahr);
if (Tag >= 1) and (Tag <= 31) then
if (Monat >= 1) and (Monat <= 12) then
if (Jahr >= 1) and (Jahr <= 3000) then
case Monat of
2:
begin
if (Jahr mod 4 = 0) and (Jahr mod 100 <> 0) or (Jahr mod 400 = 0)
then
begin
if (Tag <= 29) then
begin
writeln(Tag, ' ist zulässig.');
readln;
end
else
begin
writeln(Tag, ' ist unzulässig.');
readln;
end;
end
else
begin
if not(Jahr mod 4 = 0) and not(Jahr mod 100 <> 0) or
not(Jahr mod 400 = 0) then
begin
if (Tag <= 29) then
begin
writeln(Tag, ' ist unzulässig.');
readln;
end;
end;
end;
end;
1, 3, 5, 7, 8, 10, 12:
begin
if (Tag <= 31) then
begin
writeln('Der ', Tag, '. ist gültig.');
readln;
end
else
begin
writeln('ungültig');
readln;
end;
end;
4, 6, 9, 11:
begin
if (Tag <= 30) then
begin
writeln('Der ', Tag, '. ist gültig.');
readln;
end
else
begin
writeln('ungültig');
end;
end;
end
else
begin
writeln('Jahr ungültig.');
readln;
end
else
begin
writeln('Monat ungültig.');
readln;
end
else
begin
writeln('Tag ungültig.');
readln;
end;
end.