Új hozzászólás Aktív témák

  • alitak

    senior tag

    válasz Wizardmon #1447 üzenetére

    Na nézegettem a problémát, és kitúrtam a polcomról egy öröknaptárt. Megírtam hozzá a programot:

    program oroknaptar;
    uses newdelay,crt;
    var datum:record
    ev,honap,nap:integer;
    end;
    x,kodszam:integer;
    nap:string;

    begin
    clrscr;
    datum.ev:=0;datum.honap:=0;datum.nap:=0;x:=0;kodszam:=0;
    writeln('Add meg a szuletesed datumat, a honapot szammal add meg!');
    write('Ev: ');readln(datum.ev);
    write('Honap: ');readln(datum.honap);
    write('Nap: ');readln(datum.nap);
    if (datum.honap=1) or (datum.honap=2) then datum.ev:=datum.ev-1;
    x:=trunc(datum.ev/100);
    case x of
    15,19,23,27,31:kodszam:=kodszam+1;
    16,20,24,28,32:kodszam:=kodszam+0;
    17,21,25,29,33:kodszam:=kodszam+5;
    18,22,26,30,34:kodszam:=kodszam+3;
    end;
    x:=datum.ev mod 100;
    case x of
    0,28,56,84,6,34,62,90,17,45,73,23,51,79:kodszam:=kodszam+0;
    1,29,57,85,7,35,63,91,12,40,68,96,18,46,74:kodszam:=kodszam+1;
    2,30,58,86,13,41,69,97,19,47,75,24,52,80:kodszam:=kodszam+2;
    3,31,59,87,8,36,64,92,14,42,70,98,25,53,81:kodszam:=kodszam+3;
    4,32,60,88,10,38,66,94,21,49,77,27,55,83:kodszam:=kodszam+5;
    5,33,61,89,11,39,67,95,16,44,72,22,50,78:kodszam:=kodszam+6;
    9,37,65,93,15,43,71,99,20,48,76,26,54,82:kodszam:=kodszam+4;
    end;
    case datum.honap of
    10:kodszam:=kodszam+0;
    1,5:kodszam:=kodszam+1;
    8:kodszam:=kodszam+2;
    3,11:kodszam:=kodszam+3;
    6,2:kodszam:=kodszam+4;
    9,12:kodszam:=kodszam+5;
    4,7:kodszam:=kodszam+6;
    end;
    case datum.nap of
    1,8,15,22,29:kodszam:=kodszam+1;
    2,9,16,23,30:kodszam:=kodszam+2;
    3,10,17,24,31:kodszam:=kodszam+3;
    4,11,18,25:kodszam:=kodszam+4;
    5,12,19,26:kodszam:=kodszam+5;
    6,13,20,27:kodszam:=kodszam+6;
    7,14,21,28:kodszam:=kodszam+0;
    end;
    while kodszam>7 do kodszam:=kodszam-7;
    case kodszam of
    1:nap:='vasarnap';
    2:nap:='hetfo';
    3:nap:='kedd';
    4:nap:='szerda';
    5:nap:='csutortok';
    6:nap:='pentek';
    0:nap:='szombat';
    end;
    writeln;
    write(datum.ev,'. ',datum.honap,'. ',datum.nap,'-ika ',nap);
    end.

    A matematikai részét ne kérdezzétek, mert nem tudom, nem én találtam ki a naptárat, csak megírtam rá a programot. Viszont 1582. október 15-étől működik, egészen 3499 december 31-éig. És jól!

Új hozzászólás Aktív témák