The FORTRAN Language
FORTRAN stands for FORmula TRANslator. As its name implies, it is used for mathematical and scientific applications. FORTRAN works very well with high-precision numbers and offers an excellent library of built-in trigonometric routines that aid the scientific developer.
Over the years, programmers have added to the FORTRAN language, giving it more character-manipulation capabilities. The early versions of FORTRAN existed to solve mathematical computations without much regard for the cosmetics of how the results looked. Later FORTRAN compilers work better with character data (often called character string data because strings of characters make up words and sentences) than the older versions did, but they still retain their mathematical capabilities.
It is not the goal of this book to teach you FORTRAN. FORTRAN is not regarded as a beginner's language (although it is not as difficult as many of the others; once you learn Visual Basic, you could pick up FORTRAN relatively easily). The FORTRAN program in Listing 3.1 is an example of a payroll computation that you can study.
Listing 3.1 A Sample FORTRAN Program That Calculates Payroll
* * Calculate payroll amounts and print the net pay * * Print a title WRITE(6,10) 10 FORMAT(1H1, 2X, '** PAYROLL COMPUTATION **'//) * * Initialize overtime to 0 * TOVRTM = 0.0 * * Get hours worked and other pay data from user * WRITE(6, 20) 20 FORMAT('WHAT WERE THE HOURS WORKED? ') READ(5, 21) HRS 21 FORMAT(F4.1) WRITE(6, 22) 22 FORMAT(/'WHAT IS THE HOURLY RATE? ') READ(5, 23) RATE 23 FORMAT(F7.2) WRITE(6, 24) 24 FORMAT(/'WHAT IS THE TAX RATE? ') READ(6, 25) TAXRTE 25 FORMAT(F7.2) * * Calculate the results * * Overtime is left at 0.0 or is double pay * depending on the hours the employee worked IF (HRS .LT. 40.0) GOTO 100 TOVRTM = (HRS - 40.0) * RATE * 2.0 GROSS = 40.0 * RATE GOTO 200 100 GROSS = HRS * RATE 200 GROSS = GROSS + TOVRTM TNET = GROSS * (1.0 - TAXRTE) * * PRINT THE RESULTS * WRITE(6, 300) HRS, RATE, TAXRTE, GROSS, TNET 300 FORMAT(//'Hours: ', F4.1, 2X, 'Rate: ', F7.2, 1 2x, 'Tax rate: ', F7.2, 2x, 'Gross: $', F10.2, 2 2x, 'Net: $', F10.2) END
Notice that FORTRAN is a high-level language, easier to read than its assembler language precursor shown earlier, but still not extremely obvious to nonprogrammers. Although you may not understand everything in the program, you can see some words you recognize, such as WRITE and FORMAT. You should begin to see that high-level programming languages are closer to spoken language than either the 1s and 0s or the mnemonics of the low-level languages.
FORTRAN is not known as a large language. It has relatively few commands (as opposed to COBOL and modern-day BASIC languages), although its compactness causes some confusion if you do not know the language. FORTRAN is not regarded as a self-documenting language, a sometimes-overused term applied to languages that offer some readability for nonprogrammers. Nevertheless, FORTRAN appears to have its foothold in the scientific community, and it will for some time. In fairness, FORTRAN has lost ground over the years to more modern languages, especially as today's languages support mathematical operations better than before.