home *** CD-ROM | disk | FTP | other *** search
- PROGRAM DATTIM;
-
- {$N- Don't use the numeric coprocessor.}
-
- { This program displays the current date and time.
-
- Updated for Turbo Pascal Version 4.0 by H.M.M., 24 Nov 1987. }
-
- USES
- CRT, DOS;
-
- TYPE
- DATESTRING = STRING[28];
- TIMESTRING = STRING[6];
-
- VAR
- CLOCK: TIMESTRING;
- TODAY: DATESTRING;
-
- { -------------------------------- }
-
- FUNCTION DATE: STRING;
-
- { This function returns today's date as a string of up to 28 bytes,
- such as: "Friday, 27 November 1987".
-
- Turbo Pascal V4.0 function by Harry M. Murphy, 27 November 1987. }
-
- CONST
- MONTH : ARRAY [1..12] OF STRING[9] = ('January','February',
- 'March','April','May','June','July','August','September',
- 'October','November','December');
-
- WKDAY : ARRAY [0..6] OF STRING[9] = ('Sunday','Monday',
- 'Tuesday','Wednesday','Thursday','Friday','Saturday');
-
- VAR
- ID,IM,IW,IY,JC,JD,JM,JY: WORD;
- DAY : STRING[2];
- YEAR : STRING[4];
-
- BEGIN
- GETDATE(IY,IM,ID,IW);
- JY := IY;
- JM := IM-2;
- IF JM < 1
- THEN
- BEGIN
- JM := JM+12;
- JY := JY-1
- END;
- JC := JY DIV 100;
- JD := JY-100*JC;
- IW := ((ID+42+(13*JM-1) DIV 5 +JD+JD DIV 4+JC DIV 4-2*JC) MOD 7);
- STR(ID:2,DAY);
- STR(IY:4,YEAR);
- DATE := WKDAY[IW]+', '+DAY+' '+MONTH[IM]+' '+YEAR
- END { Function DATE };
-
- { -------------------------------- }
-
- FUNCTION TIME: STRING;
-
- { This Turbo Pascal (Version 4.0) function returns the current clock
- time as a string of 6 bytes, such as: "19:05h".
-
- Turbo Pascal V4.0 function by Harry M. Murphy, 27 November 1987. }
-
- VAR
- H,M,S,T : WORD;
- HR,MN : STRING[2];
-
- BEGIN
- GETTIME(H,M,S,T);
- STR(H:2,HR);
- STR(M:2,MN);
- IF MN[1] = ' ' THEN MN[1] := '0';
- TIME := HR+':'+MN+'h'
- END { Function TIME };
-
- { -------------------------------- }
-
- BEGIN { Program DATTIME }
- CLOCK:=TIME;
- TODAY:=DATE;
- WRITELN(CLOCK,', ',TODAY)
- END.