Fortran Program samp1.f

Areas in red are those that need to modified when using movable window remediation. Lines in blue are comment lines that describe the necessary changes.

C**           Program samp1.f
C
C Samp1.f reads in 4 lines of data consisting of:
C
C    Name1
C    Birthdate1
C    Name2
C    Birthdate2
C
C
C where all entries are character strings and the birth dates are in
C date format:  MMDDYY.
C 
C Note that while it would be more efficient for the format of the 
C input data to be in ISO (International Standards Organization) date
C format, YYMMDD, the format used provides a more useful program for 
C illustrating problems associated with y2k remediation.
C
C Example:
C
C    John Smith
C    991201
C    Joe Public
C    981131
C
C The program compares the dates and computes which individual is
C older and prints the result with birth dates expressed in the
C format MM/DD/YY.
C
C**
C** Define the pivot value in a parameter statement
C** parameter (ipivot = 60)
	character* date1,date2,date1p,date2p
        character *20 name1,name2
        character*3 month(12)
C** Define two character variables of length 4 cy1, cy2 
C** to store the value of the years computed from a call to the window routine
C**  character*4 cy1, cy2 
	integer m1,m2,d1,d2,y1,y2
        data  month/'Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun',
     1   'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'/
        read(*,'(a)')name1
	read (*,'(a)')date1 
        read(*,'(a)')name2
	read (*,'(a)')date2 
	read(date1,'(3i2)')m1,d1,y1
        read(date2,'(3i2)')m2,d2,y2
C** Call the fixed window routine
C**    call ..... 
        date1p = date1(5:6)//date1(1:2)//date1(3:4)
        date2p = date2(5:6)//date2(1:2)//date2(3:4)
        if(date1p.eq.date2p)then
C** Delete  1900+  in the following lines 
C** The windowing routine will correctly compute the values of y1, y2 
         print *, name1,' with birth date: ', month(m1),' ',d1,', ',
     1    1900+y1
         print *
         print *, 'is the same age as'
         print *
         print *, name2,' with birth date: ', month(m2),' ',d2,', ',
     1    1900+y2
        else if(date1p.lt.date2p)then
         print *, name1,' with birth date: ', month(m1),' ',d1,', ',
     1    1900+y1
         print *
         print *, 'is older than'
         print *
         print *, name2,' with birth date: ', month(m2),' ',d2,', ',
     1    1900+y2
        else
         print *, name1,' with birth date: ', month(m1),' ',d1,', ',
     1    1900+y1
         print *
         print *, 'is younger than'
         print *
         print *, name2,' with birth date: ', month(m2),' ',d2,', ',
     1    1900+y2
        endif
	end
C**  Add a window routine here