uses
SysUtils,
crt32;
const
enero=31; marzo=31;abril=30;mayo=31;junio=30;
julio=31; agosto=31; septiembre=30;
octubre=31;noviembre=30;diciembre=31;
var
dia,mes,anio,b,febrero,dias,resto,inicio:integer;
begin
febrero:=0;
b:=1;
clrscr;
writeln('Ingrese Fecha DD-MM-AAAA');
repeat
Writeln('Ingrese dias DD');
readln(dia);
if dia >31 then
begin
writeln('error los dias no pueden ser mas de 31');
b:=0;
end
else
b:=1;
until b=1;
repeat
writeln('Ingrese Mes MM');
readln(mes);
if mes >12 then
begin
writeln ('Error no existen mas de 12 meses');
b:=0;
end
else
b:=1;
until b=1;
writeln('Ingrese Anio AAAA');
readln(anio);
clrscr;
Writeln(' Ingrese dia de la semana que fue el primero de enero del anio');
Writeln(' Lunes:1,Martes:2,Miercoles:3,Jueves:4,Viernes:5,Sabado:6,Domingo:7 ');
readln(inicio);
if (anio mod 100=0) and (anio mod 400 <> 0) then
febrero:=28;
if (anio mod 4) =0 then
begin
febrero:=29;
end
else
begin
febrero:=28;
end;
if mes =12 then
dias:=enero+febrero+marzo+abril+mayo+junio+julio+agosto+septiembre+octubre+noviembre+dia;
if mes =11 then
dias:=enero+febrero+marzo+abril+mayo+junio+julio+agosto+septiembre+octubre+dia;
if mes=10 then
dias:=enero+febrero+marzo+abril+mayo+junio+julio+agosto+septiembre+dia;
if mes=09 then
dias:=enero+febrero+marzo+abril+mayo+junio+julio+agosto+dia;
if mes=08 then
dias:=enero+febrero+marzo+abril+mayo+junio+julio+dia;
if mes=07 then
dias:=enero+febrero+marzo+abril+mayo+junio+dia;
if mes=06 then
dias:=enero+febrero+marzo+abril+mayo+dia;
if mes=05 then
dias:=enero+febrero+marzo+abril+dia;
if mes=04 then
dias:=enero+febrero+marzo+dia;
if mes=03 then
dias:=enero+febrero+dia;
if mes=02 then
dias:=enero+dia;
if mes=01 then
dias:=dia;
resto:=(dias+inicio)mod 7;
if resto = 0 then
writeln(dia,'/', mes,'/',anio ,'El dia es Sabado');
if resto=1 then
writeln(dia,'/', mes,'/',anio ,'El dia es Domingo');
if resto=2 then
writeln(dia,'/', mes,'/',anio ,'El dia es Lunes');
if resto=3 then
writeln(dia,'/', mes,'/',anio,' El dia es Martes');
if resto=4 then
writeln(dia,'/', mes,'/',anio ,'El dia es Miercoles');
if resto=5 then
writeln(dia,'/', mes,'/',anio ,'El dia es Viernes');
readln;
end.