HP3000-L Archives

September 2004, Week 4

HP3000-L@RAVEN.UTC.EDU

Options: Use Monospaced Font
Show Text Part by Default
Show All Mail Headers

Message: [<< First] [< Prev] [Next >] [Last >>]
Topic: [<< First] [< Prev] [Next >] [Last >>]
Author: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Subject:
From:
Brian Donaldson <[log in to unmask]>
Reply To:
Brian Donaldson <[log in to unmask]>
Date:
Wed, 22 Sep 2004 14:58:01 -0400
Content-Type:
text/plain
Parts/Attachments:
text/plain (84 lines)
Here's a sample COBOL program I have that will do what you ask for.
It compiles and runs...

$CONTROL OPTIMIZE=1,VALIDATE,BOUNDS,POST85,CROSSREF,SYNC32
$CONTROL ERRORS=5
 IDENTIFICATION DIVISION.
 PROGRAM-ID. TEST.
 ENVIRONMENT DIVISION.
 DATA DIVISION.
 WORKING-STORAGE SECTION.
 01  WS-INTEGER-FIELD-1 PIC S9(09) COMP VALUE ZEROES.
 01  WS-INTEGER-FIELD-2 PIC S9(09) COMP VALUE ZEROES.
 01  WS-NEW-DATE        PIC S9(09) COMP VALUE ZEROES.
 01  WS-START-DATE      PIC S9(09) COMP VALUE 20040101.
 01  WS-END-DATE        PIC S9(09) COMP VALUE 20040131.
 PROCEDURE DIVISION.
 A000-MAINLINE.

     COMPUTE WS-INTEGER-FIELD-1 = FUNCTION INTEGER-OF-DATE
                                   (WS-START-DATE).
     COMPUTE WS-INTEGER-FIELD-2 = FUNCTION INTEGER-OF-DATE
                                   (WS-END-DATE).
     DISPLAY 'Start Date (INTEGER)=' WS-START-DATE ">"
                                     WS-INTEGER-FIELD-1.
     DISPLAY 'End   Date (INTEGER)=' WS-END-DATE ">"
                                     WS-INTEGER-FIELD-2.
     PERFORM UNTIL WS-INTEGER-FIELD-1 > WS-INTEGER-FIELD-2
        COMPUTE WS-INTEGER-FIELD-1 = FUNCTION INTEGER-OF-DATE
                                        (WS-START-DATE)
        ADD 1 TO WS-INTEGER-FIELD-1
        COMPUTE WS-NEW-DATE = FUNCTION DATE-OF-INTEGER
                                   (WS-INTEGER-FIELD-1)
        MOVE WS-NEW-DATE TO WS-START-DATE
        DISPLAY 'NEXT DATE IS=>' WS-INTEGER-FIELD-1 ">"
                                 WS-NEW-DATE "<"
     END-PERFORM.
     STOP RUN.

At run time you get:

RUN TEST.NMPRG
Start Date (INTEGER)=+020040101>+000147193
End   Date (INTEGER)=+020040131>+000147223
NEXT DATE IS=>+000147194>+020040102<
NEXT DATE IS=>+000147195>+020040103<
NEXT DATE IS=>+000147196>+020040104<
NEXT DATE IS=>+000147197>+020040105<
NEXT DATE IS=>+000147198>+020040106<
NEXT DATE IS=>+000147199>+020040107<
NEXT DATE IS=>+000147200>+020040108<
NEXT DATE IS=>+000147201>+020040109<
NEXT DATE IS=>+000147202>+020040110<
NEXT DATE IS=>+000147203>+020040111<
NEXT DATE IS=>+000147204>+020040112<
NEXT DATE IS=>+000147205>+020040113<
NEXT DATE IS=>+000147206>+020040114<
NEXT DATE IS=>+000147207>+020040115<
NEXT DATE IS=>+000147208>+020040116<
NEXT DATE IS=>+000147209>+020040117<
NEXT DATE IS=>+000147210>+020040118<
NEXT DATE IS=>+000147211>+020040119<
NEXT DATE IS=>+000147212>+020040120<
NEXT DATE IS=>+000147213>+020040121<
NEXT DATE IS=>+000147214>+020040122<
NEXT DATE IS=>+000147215>+020040123<
NEXT DATE IS=>+000147216>+020040124<
NEXT DATE IS=>+000147217>+020040125<
NEXT DATE IS=>+000147218>+020040126<
NEXT DATE IS=>+000147219>+020040127<
NEXT DATE IS=>+000147220>+020040128<
NEXT DATE IS=>+000147221>+020040129<
NEXT DATE IS=>+000147222>+020040130<
NEXT DATE IS=>+000147223>+020040131<
NEXT DATE IS=>+000147224>+020040201<

end of program here....


HTH,
Brian Donaldson.

* To join/leave the list, search archives, change list settings, *
* etc., please visit http://raven.utc.edu/archives/hp3000-l.html *

ATOM RSS1 RSS2