Nu finns faktiskt en HTML version av Fortran 77 standarden tillgänglig!
PROGRAM Huvudprogram
FUNCTION Funktion, FUNCTION kan föregås av
någon av nedanstående deklarationer
av variabler, utom IMPLICIT.
SUBROUTINE Subrutin
¤¤ ENTRY Extra ingång i underprogram.
¤ BLOCK DATA Gemensamma data, vilka delvis har
initialvärden.
¤ IMPLICIT IMPLICIT REAL (A-H,O-Z), INTEGER (I-N)
är skönsvärde. Satsen kan användas för
att låta variabler med viss begynnelsebokstav
få viss typ, jämför Appendix 4, avsnitt 5.
IMPLICIT NONE Ej standard men bra, finns i Fortran 90,
ger "Pascal-konvention", dvs
att alla variabler måste deklareras.
På Sun och DEC kan motsvarande funktion
även erhållas med väljaren -u
i kompileringskommandot.
INTEGER
REAL
DOUBLE PRECISION
COMPLEX
LOGICAL
CHARACTER
DIMENSION Kan även ges direkt i typdeklarationen,
liksom i COMMON.
¤¤ COMMON Gemensam lagringsarea för variabler som
finns i flera programenheter.
¤¤ EQUIVALENCE Gemensam lagringsarea för flera
variabler i samma programenhet.
PARAMETER Gör om variabeln till en konstant med
ett visst värde.
EXTERNAL Talar om att ett variabelnamn svarar mot
en extern funktion eller underrutin.
INTRINSIC Talar om att ett variabelnamn svarar
mot en inbyggd funktion.
SAVE Sparar värden mellan återhopp från och
nytt inhopp i underprogram.
¤ DATA Sätter begynnelsevärden på variabler.
GOTO snr1
Hopp till satsnummer snr1 (Vanlig hoppsats).
¤ GOTO (snr1, snr2, snr3), heltalsuttryck
Styrd hoppsats, om heltalsuttrycket
är 1, 2, eller 3 sker hopp till
satsnummer snr1, snr2, respektive snr3
(godtyckligt antal snr tillåtna)
¤¤ GOTO satsnummervariabel, (snr1, snr2, snr3)
Tilldelad hoppsats, hopp sker till det
satsnummer som svarar mot
satsnummervariabeln.
(godtyckligt antal snr tillåtna).
¤¤ GOTO satsnummervariabel
Tilldelad vanlig hoppsats (hybrid).
¤¤ ASSIGN snr TO satsnummervariabel
En satsnummervariabel kan ej tilldelas
med en vanlig tilldelningssats
(heltalsvariabel = heltalsuttryck)
utan endast med ASSIGN.
Den kan sedan användas både i tilldelad
hoppsats och i vanlig hoppsats, samt
även i samband med FORMAT.
¤ IF (numeriskt_uttryck) snr1, snr2, snr3
Aritmetiskt hoppvillkor, hopp till satsnummer
snr1 om uttrycket är negativt
snr2 om uttrycket är noll
snr3 om uttrycket är positivt
Kallas aritmetisk IF-sats.
IF (logiskt_uttryck) sats
Villkorssats, om det logiska uttrycket
är sant så utföres satsen, annars hoppar
man direkt till nästa sats. Satsen får
vara en vanlig tilldelningssats eller en
vanlig hoppsats eller ett anrop av
en underrutin. Kallas "logisk IF-sats".
IF (logiskt_uttryck) THEN ! Fullständig alternativsats.
satsföljd1 ! Varianter utan ELSE-del,
! liksom kapslade med ELSE
ELSE ! ersatt med
! ELSE IF (log_uttr) THEN
satsföljd2 ! finns även.
END IF
CONTINUE Fortsättningssats, gör inget.
Rekommenderas för snygg avslutning av
DO-slingan.
STOP Avslutningssats, avbryter exekveringen.
END Avslutningssats, avbryter kompileringen
av programenheten, samt även
exekveringen om man befinner sig där i
huvudprogrammet. Om ett END påträffas
under exekvering av ett underprogram sker
i stället återhopp till den anropande
programdelen.
¤ PAUSE Paussats, avbryter exekveringen
tillfälligt (implementationsberoende).
DO snr numerisk_variabel = var1, var2, var3
DO-slinga
¤ Flyttal tillåtes tyvärr som variabler
i DO-slingor.
OPEN Öppna fil ! Öppna en fil innan
! programmet kan använda den.
CLOSE Stänga fil ! En fil som ej har
! stängts kan vara
! omöjlig att läsa!
READ Inläsning
WRITE Utmatning
¤ PRINT Tidigare utmatning till radskrivaren,
numera synonym till WRITE
(implementationsberoende)
INQUIRE Förfrågan om fil-status
REWIND Återspola en fil till början
BACKSPACE Återspola en fil en post
ENDFILE Markera filslut
FORMAT Fortrans specialitet (se nedan)
CALL Anropa en underrutin
fnktn En funktion anropas genom att bara ge
funktionsnamnet
RETURN Återhopp från underprogram
(underrutin eller funktion)
Exempel
Heltal I I5 5 positioner reserveras.
Flyttal F F8.3 8 positioner, varav
3 för decimalerna.
E E14.6 14 positioner, varav
6 för decimalerna,
4 för exponenten,
1 för tecken,
1 för inledande nolla,
1 för decimalpunkt, samt
1 för inledande blank.
D D28.12 Som E fast för dubbel-
precisionstal.
G G14.6 Som F om talet ryms i
fältet, annars som E.
Komplexa tal Som par av flyttal.
Logiska L
Textsträng A A7 Exempel (7 bokstäver ryms i A7)
' ' 'Exempel'
¤ nH 7HExempel Hollerith-konstant
Positionering Tn n positioner från början
TLn n positioner åt vänster
TRn n positioner åt höger
nX n positioner åt höger
¤ Ej ny rad $ Användes då man vill göra
inmatning i direkt
anslutning till utmatning
Ej standard! Ej Fortran 90!
Avbryt : Om listan är slut avbryts
formatet här.
Ny post / Normalt ny rad
Binär B Ej standard men Fortran 90
Oktal O Ej standard men Fortran 90
Hexadecimal Z Ej standard men Fortran 90
A 2.8.1 Behandling av tecken och blanka
Utmatning SP + skrives ut
SS + skrives ej ut
S Standard (normalt SS)
Inmatning BZ Blanka tolkas som noll
BN Blanka nonchaleras
BN är standard under ULTRIX, under
hålkortseran var BZ standard. Jämför
BLANK='ZERO' respektive
'NULL' i OPEN-satsen, se
avsnitt 8.1.1.
OBS: S, SP, SS, BN och BZ gäller formatet ut, eller till dess en ny av samma slag uppträder.
Skalfaktor kP
Inmatning:
En annan utvidgning är att FORMATen I, B, O och Z kan skrivas Iw.m, Bw.m, Ow.m och Zw.m, där w är den vanliga fältbredden, medan det valfria tillägget m indikerar ett minimalt antal siffror, med ledande nollor om så erfordras.