b'\n_START_ARTICLE_\nFortran\n_START_SECTION_\nHistorie\n_START_PARAGRAPH_\nP\xc3\xa5 1950-tallet var utviklingen av kompilatorer en sv\xc3\xa6rt vanskelig oppgave. En gruppe ledet av John Backus brukte 18 \xc3\xa5r p\xc3\xa5 \xc3\xa5 utvikle Fortran. _NEWLINE_H\xc3\xb8sten 1953 foreslo Backus overfor sin ledelse i IBM \xc3\xa5 utvikle et praktisk alternativ til assemblerspr\xc3\xa5k for \xc3\xa5 programmere den nye stormaskinen IBM 704. F\xc3\xb8rste utkast til spesifikasjon The IBM Mathematical Formula Translating System (IBMs matematisk formeloversettelsessystem) forel\xc3\xa5 sommeren 1954. Den f\xc3\xb8rste kompilatoren ble lansert april 1957. Behovet for instrukser for \xc3\xa5 operere en datamaskin ble redusert med faktor 20, og spr\xc3\xa5ket ble raskt akseptert._NEWLINE_Erfaringene med utviklingen av Fortran bidro til en kontekstfri grammatikk som ble banebrytende for senere h\xc3\xb8yniv\xc3\xa5spr\xc3\xa5k i form av Backus\xe2\x80\x93Naur-formen. En lignende grammatikk ble foresl\xc3\xa5tt i 1956. Mangelen p\xc3\xa5 formaliserte definisjoner av syntaks, skapte problemer da tidligere utviklere av Fortran forlot IBM. Da Backus utviklet Algol-58, adopterte han syntaks-regler for Fortran og senere programmeringsspr\xc3\xa5k, som var basert p\xc3\xa5 P\xc4\x81\xe1\xb9\x87inis sanskrit-grammatikk._NEWLINE_Fortran ble sv\xc3\xa6rt popul\xc3\xa6rt og ble snart brukt til en rekke form\xc3\xa5l. Fortrankompilatorer ble utviklet for mange ulike typer datamaskiner. Siden Fortrankompilatorene som ble utviklet ikke var fullstendig kompatible med hverandre kunne man ikke lenger flytte et program fra en maskin til en annen uten \xc3\xa5 omarbeide det f\xc3\xb8rst. Dette f\xc3\xb8rte til en rekke Fortran-dialekter. Med tiden opprettet den amerikanske organisasjonen for standarder (ANSI) en komit\xc3\xa9 for \xc3\xa5 standardisere Fortran for \xc3\xa5 sikre portabiliteten til et Fortranprogram, alts\xc3\xa5 slik at man skulle kunne bruke en hvilken som helst datamaskin og kompilator uten \xc3\xa5 m\xc3\xa5tte omarbeide koden f\xc3\xb8rst. Denne komiteen skulle etter planen ha utarbeidet en ferdig standard i 1966 men ble f\xc3\xb8rst ferdig noen \xc3\xa5r senere. Standarden ble allikevel kjent som FORTRAN 66. FORTRAN 66 blir ogs\xc3\xa5 kalt FORTRAN IV. Merk at de f\xc3\xb8rste versjonene av Fortran ble skrevet med store bokstaver, dette gjelder ikke lenger. Senere revisjoner og standarder er FORTRAN 77, Fortran 90, Fortran 95 (kun en liten revisjon av Fortran 90), Fortran 2003 og Fortran 2008._NEWLINE_Fortran var og er fortsatt veldig popul\xc3\xa6rt i det vitenskapelige milj\xc3\xb8et og blant ingeni\xc3\xb8rer innen meteorologi, styrkeberegning, styresystemer i tungindustri, kraftverk, og romfart, men i mindre grad i administrative system. Fortran var det dominerende programmeringsspr\xc3\xa5ket i flere ti\xc3\xa5r etter at det ble utviklet og er fortsatt et av de vanligste programmeringsspr\xc3\xa5kene i bruk. I den senere tid har Fortran f\xc3\xa5tt st\xc3\xb8tte for objektorientering og \xc2\xabhand-shaking\xc2\xbb med C/C++.\n_START_SECTION_\nFortran i dag\n_START_PARAGRAPH_\nSelv om Fortran 90 og senere versjoner har tilf\xc3\xb8rt mange egenskaper som en kan vente seg av et moderne programmeringsspr\xc3\xa5k, blir fortsatt Fortran regnet for \xc3\xa5 v\xc3\xa6re et gammeldags spr\xc3\xa5k. En grunn til dette kan v\xc3\xa6re at det meste av koden som er i bruk i dag er kodet i FORTRAN 77, f\xc3\xb8r spr\xc3\xa5ket ble modernisert. Historisk sett hadde man heller ikke s\xc3\xa5 kraftige maskiner som n\xc3\xa5, slik at det var viktigere at programmene var raske enn at de var lette \xc3\xa5 forst\xc3\xa5 for en menneskelig leser av koden. Sv\xc3\xa6rt lite ny propriet\xc3\xa6r programvare blir laget i Fortran, men i forskningsmilj\xc3\xb8et er fortsatt Fortran en favoritt p\xc3\xa5 grunn av det store fokuset p\xc3\xa5 hastighet.\n_START_SECTION_\nHello, World!\n_START_PARAGRAPH_\nEt enkelt og vanlig eksempel p\xc3\xa5 kodesnutter i programmeringsspr\xc3\xa5k er \xc3\xa5 skrive ut beskjeden \xc2\xabHello, World!\xc2\xbb til skjermen. Denne kodesnutten kan bli kj\xc3\xb8rt p\xc3\xa5 enhver Fortran 90/95-kompilator._NEWLINE_ write(*,*)"Hello, World!"_NEWLINE_ end\n_START_SECTION_\nVolumet av en sylinder\n_START_PARAGRAPH_\nDette programmet regner ut volumet til en sylinder og kan bli kompilert og kj\xc3\xb8rt med enhver Fortran 90/95-kompilator. Teksten som f\xc3\xb8lger utropstegn (!) er kommentarer og vil ikke bli tatt hensyn til av programmet._NEWLINE_ program sylinder_NEWLINE_ ! Regn ut volumet til en sylinder._NEWLINE_ implicit none ! Krever at samtlige variable blir deklarert (gitt en type)_NEWLINE_ ! I eldre versjoner av fortran ble variable deklarert implistt,_NEWLINE_ ! avhengig av den f\xc3\xb8rste bokstaven i variabelnavnet_NEWLINE_ integer        :: ierr      ! Denne variabelen er et heltall_NEWLINE_ real           :: radius,height,volume ! mens denne variabelen er et flyttall_NEWLINE_ real,parameter :: pi = 3.14159 ! Denne variabelen er en konstant og kan ikke bli endret il\xc3\xb8pet av programmet_NEWLINE_ do_NEWLINE_    ! Sp\xc3\xb8r brukeren om radius og h\xc3\xb8yde og leser dem inn_NEWLINE_    write (*,*) "Tast inn radius og h\xc3\xb8yde, \'q\' for \xc3\xa5 avslutte."_NEWLINE_    read (*,*,iostat=ierr) radius,height_NEWLINE_ _NEWLINE_    ! Dersom radius og h\xc3\xb8yde ikke kunne leses inn fra input avsluttes programmet_NEWLINE_    if (ierr /= 0) stop "ending program"_NEWLINE_ _NEWLINE_    ! Regn ut volumet. ** betyr opph\xc3\xb8yd i_NEWLINE_    volume = pi*height*radius**2_NEWLINE_ _NEWLINE_    ! Vis innvariablene (radius, height) og resultatet (volume) p\xc3\xa5 skjermen_NEWLINE_    write (*,"(1x,\'radius=\',f6.2,5x,\'height=\',f6.2,5x,\'volume=\',f6.2)") radius,height,volume_NEWLINE_ end do end program sylinder'