Fortran

Frå Wikipedia – det frie oppslagsverket
Gå til: navigering, søk

Fortran er eit programmeringsspråk og det første høgnivåspråket, sidan det ikkje var basert på maskinsspråket til maskinen det var laga for, men kunne i prinsippet (og seinare i praksis) blir flytta til og brukt på datamaskinar av ulik type frå den programmet vart utvikla for.

Historie[endre | endre wikiteksten]

Fortran vart utvikla av ei gruppe leda av John Backhus, som utvikla den første Fortran-kompilatoren for IBM sin datamaskin modell 704 i perioden 1954-1957. Sjølve namnet er ei forkorting for FORmula TRANslation. Språket vart svært populært, og vart snart brukt til ei rekke formål. Fortrankompilatorar vart utvikla for mange ulike typar datamaskiner. Sidan fortrankompilatorane som vart utvikla ikkje var heilt kompatible, kunne ein ikkje flytte eit program over til ei anna maskin utan å omarbeide det. Med tida oppretta den amerikanske organisasjonen for standarder (ANSI) ein komité som skulle lage ein standard for Fortran, slik at eit Fortranprogram som fylgde standarden skulle kunne fungere på ein kvar Fortrankompilator. Denne kommitéen skulle vore ferdig i 1966, men vart ferdig nokre år seinare. Standarden vart likevel kjend som FORTRAN 66. Seinare kom det utvidingar av standarden kalla FORTRAN 77, Fortran 90, Fortran 95, Fortran 2003 og Fortran 2008.

Fortran var særleg populært i vitskapelege miljø og blant ingeniørar, som i meteorologi, styrkeberekning, styresystem i tungindustri, kraftverk og romfart, men i mindre grad i administrative system. Fortran var det dominerande programeringsspråket i fleire tiår frå det vart utvikla, og er framleis eit av dei vanlegaste programerinsspråka i bruk.

Fortran i dag[endre | endre wikiteksten]

Sjølv om Fortran 90 og seinare versjonar har tilført mange eigenskapar ein ventar seg av moderne programeringsspråk, så blir Fortran likevel rekna av mange som eit gamaldags programeringsspråk. Ein grunn er at det meste av koden som er i bruk i dag, er kode utvikla for lenge sidan, før språket vart modernisert. Historisk sett hadde ein heller ikkje så kraftige datamaskiner som no, slik at det var viktigare at programma var raske enn at dei var lette å forstå. Svært lite ny programvare blir laga i Fortran.

Døme på programmering i Fortran[endre | endre wikiteksten]

Hei verd![endre | endre wikiteksten]

Eit enkelt døme på å gi ei skjermmelding som kan bli kompilert og køyrt med ein kvar Fortran 90- eller 95-kompilator.

program hallo
print*,"Hei verd!"
end program hallo

Arealet til ein sylinder[endre | endre wikiteksten]

Dette programmet reknar ut arealet til ein sylinder og kan bli kompilert og køyrt med ein kvar Fortran 90 eller 95 kompilator. Teksten som fylgjer utropsteikn er kommentarar programmet ikkje tek omsyn til.

program sylinder
! Rekn ut arealet til ein sylinder.
!
! Declare variables and constants.
implicit none ! Krever at det blir spurt etter alle variablar, ein Fortran 90-eigenskap.
integer            :: ierr
real               :: radius,height,area
real   , parameter :: pi = 3.14159
do
   ! Spør brukaren om radius og høgde, og les dei inn.
   write (*,*) "Tast inn radius og hoegde, 'q' for aa avslutte."
   read (*,*,iostat=ierr) radius,height
   ! 
   ! If radius and height could not be read from input, terminate program.
   if (ierr /= 0) stop "ending program"
   !
   ! Rekn ut arealet. ** tyder "opphøg i eksponent".
   area = 2*pi*(radius**2 + radius*height)
   !
   ! Vis innvariablane (radius, height) og resultatet (area) på skjermen.
   write (*,"(1x,'radius=',f6.2,5x,'height=',f6.2,5x,'area=',f6.2)") radius,height,area
end do
end program sylinder


Programmeringsspråk

ABC | Ada | AFL | Agora | ALGOL | APL | Assembler | awk | B | BASIC | BETA | BLISS | C | C++ | C# | Caml | Cobol | Concurrent C | CSP | D | Delphi | Erlang | Forth | Fortran | Haskell | HyperTalk | Icon| INTERCAL | Java | Lisp | Miranda | ML | Modula | NIAL | Objektorientert C | occam | OCaml | O'Haskell | Pascal | Perl | PHP | Pike | PL/I | Plankalkül | Portal | Prolog | Python | R | Ruby | Scheme | Simula | Sina | Sisa | Smalltalk | SML | SNOBOL | Visual Basic