a10dat.for (File 3)
This file contains a FORTRAN 77 data retrieval routine to read and print a10dat.txt (File 6). The following is a listing of this program. For additional information regarding variable definitions, variable lengths, variable types, units, and codes, please see the description for a10dat.txt.
c****************************************************************
c* FORTRAN 77 data retrieval routine to read and print the file
c* named "a10dat.txt" (File 6).
c****************************************************************
CHARACTER qualt*11
INTEGER sta, cast, bot, pre, som
REAL ctdtmp, ctdsal, theta, sal, oxy, silca
REAL phspht, nitr, cfc11, cfc12, tcarb, talk
OPEN (unit=1, file='a10dat.txt')
OPEN (unit=2, file='a10data.txt')
write (2, 5)
c*Writes out column labels*
5 format (2X,'STNNBR',2X,'CASTNO',2X,'BTLNBR',2X,
1 'CTDPRS',2X,'CTDTMP',2X,'CTDSAL',3X,'THETA',4X,
2 'SALNTY',2X,'OXYGEN',2X,'SILCAT',2X,'PHSPHT',1X,
3 'NO2+NO3',3X,'CFC-11',3X,'CFC-12',2X,'TCARBN',1X,
4 'SOMMA#',2X,'ALKALI', 8X,'QUALT',/,
5 28X,'DBAR',2X,'ITS-90',2X,'PSS-78',2X,'ITS-90',
6 4X,'PSS-78',1X,4('µmol/KG',1X),1X,'PMOL/KG',2X,'PMOL/KG',
7 1X,'µmol/KG',8X,'µmol/KG',12X,'*',/,
8 17X,'*******',17X,'*******',11X,5('*******',1X),1X,
9 '*******',2X,2('*******',1X),7X,'*******'12X,'*')
c*Sets up a loop to read and format all the data in the file*
read (1, 6)
6 format (////////////)
7 CONTINUE
read (1, 10, end=999) sta, cast, bot, pre, ctdtmp,
1 ctdsal, theta, sal, oxy, silca, phspht, nitr,
2 cfc11, cfc12, tcarb, som, talk, qualt
10 format (5X, I3, 7X, I1, 5X, I3, 4X, I4, 1X, F7.4,
1 1X, F7.4, 1X, F7.4, 1X, F9.4, 1X, F7.1, 1X, F7.2,
2 1X, F7.2, 1X, F7.2, 1X, F8.3, 1X, F8.3, 1X, F7.1,
3 5X, I2, 1X, F7.1, 2X, A11)
write (2, 20) sta, cast, bot, pre, ctdtmp,
1 ctdsal, theta, sal, oxy, silca, phspht, nitr,
2 cfc11, cfc12, tcarb, som, talk, qualt
20 format (5X, I3, 7X, I1, 5X, I3, 4X, I4, 1X, F7.4,
1 1X, F7.4, 1X, F7.4, 1X, F9.4, 1X, F7.1, 1X, F7.2,
2 1X, F7.2, 1X, F7.2, 1X, F8.3, 1X, F8.3, 1X, F7.1,
3 5X, I2, 1X, F7.1, 2X, A11)
GOTO 7
999 close(unit=1)
close(unit=2)
stop
end