Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
How to put the time and date into your program so that it runs regardless.
#14
(10-19-2007, 07:40 AM)Smurfy link Wrote:pay me $100

Heh - What's my share?

Mac

DECLARE FUNCTION MyInput% (m$)
' Leapyear Calculator
ON TIMER(1) GOSUB UpdateTime
TIMER ON
DO
  CLS : LOCATE 3, 1
  TimeDisplayShowing = 0: WHILE TimeDisplayShowing = 0: WEND
  DO
    PRINT "Would you like to compute a range of years(1) or a single year(2): ";
    DO: q$ = INKEY$: LOOP WHILE q$ = ""
    IF q$ = CHR$(27) THEN SYSTEM
  LOOP WHILE q$ <> "1" AND q$ <> "2"
  PRINT q$
  IF VAL(q$) = 1 THEN GOSUB Range
  IF VAL(q$) = 2 THEN GOSUB SingleYear
  LOCATE 25, 1: PRINT "Would you like another run? Y/N: ";
  DO: R$ = UCASE$(INKEY$): LOOP WHILE R$ <> "Y" AND R$ <> "N"
LOOP WHILE R$ = "Y"
CLS
SYSTEM

Range:
DO
  F = MyInput("Enter the first year")
  L = MyInput("Enter the last year")
  IF F >= L THEN PRINT "Range out of order"
LOOP WHILE F >= L
FOR y = F TO L: GOSUB DoYear: NEXT y
RETURN

SingleYear:
y = MyInput("Enter a year")
GOSUB DoYear
RETURN

DoYear:
m = 2
IF y MOD 4 = 0 THEN
  m = 1
  IF y MOD 100 = 0 THEN
    m = 2
    IF y MOD 400 = 0 THEN m = 1
  END IF
END IF
IF m = 1 THEN
  TIMER OFF: COLOR 4, 0
  PRINT y; "is a leap year."
  COLOR 7, 0: TIMER ON
ELSE
  PRINT y; "is not a leap year."
END IF
RETURN

UpdateTime:
row = CSRLIN
col = POS(1)
LOCATE 1, 60: PRINT DATE$; " "; TIME$
LOCATE row, col, 1
TimeDisplayShowing = -1
RETURN

FUNCTION MyInput% (m$)
DO
  LOCATE , , 1: PRINT m$; ": ";
  start = LEN(m$) + 3
  w$ = ""
  DO
    DO: k$ = INKEY$: LOOP WHILE LEN(k$) <> 1
    SELECT CASE k$
    CASE "0" TO "9": IF LEN(w$) < 4 THEN w$ = w$ + k$: PRINT k$;
    CASE CHR$(13): PRINT
    CASE CHR$(27): SYSTEM
    CASE CHR$(8):
      LOCATE , start: PRINT SPACE$(4); : LOCATE , start
      IF LEN(w$) > 1 THEN
        w$ = LEFT$(w$, LEN(w$) - 1): PRINT w$;
      ELSE
        w$ = ""
      END IF
    END SELECT
  LOOP WHILE ASC(k$) <> 13
  PRINT
  IF VAL(w$) < 1583 THEN PRINT "Must be greater than 1582"
LOOP WHILE VAL(w$) < 1583
MyInput% = VAL(w$)
END FUNCTION

Reply


Messages In This Thread
Re: How to put the time and date into your program so that it runs regardless. - by Mac - 10-19-2007, 06:29 PM

Forum Jump:


Users browsing this thread: 1 Guest(s)