Fortran: razlika između inačica
Bot: Automatski unos stranica |
mNema sažetka uređivanja |
||
| Redak 1: | Redak 1: | ||
'''Fortran''' (ili '''FORTRAN''') ime je za proceduralni, imperativni [[programski jezik]] koji je bio razvijen tijekom 50-ih godina [[20. stoljeće|dvadesetog stoljeća]], i koristi se većinom u znanstvene svrhe. Ime FORTRAN dobiveno je od skraćivanjem engleske složenice '''For'''mula '''Tran'''slation. | |||
== Povijest razvoja i inačice == | == Povijest razvoja i inačice == | ||
| Redak 36: | Redak 36: | ||
== Posebitosti == | == Posebitosti == | ||
Fortran je jedan od najstarijih visokorazinskih programskih jezika, a tijekom desetljeća razvio je skup osobitosti koje ga čine jedinstvenim u znanstvenom i tehničkom računarstvu. Njegove posebnosti proizlaze iz povijesnog razvoja, stroge sintakse, optimizacije za numeričke izračune i dugogodišnje uporabe u inženjerskim disciplinama. | |||
=== Optimiziran za numeričke izračune i znanstvene aplikacije === | |||
Fortran je od samog početka dizajniran za matematičke operacije, što ga čini iznimno brzim u radu s matricama, vektorima i kompleksnim numeričkim algoritmima. Kompajleri Fortrana tradicionalno generiraju vrlo učinkovit strojni kod, posebno za operacije s pomičnim zarezom. | |||
=== Jednostavna i stroga sintaksa === | |||
Sintaksa Fortrana je jednostavna, ali stroga. Povijesno je bio vezan uz formatirane linije (npr. FORTRAN 77), dok modernije inačice (Fortran 90+) uvode slobodni format, modularnost i čitljiviji kod. Stroga sintaksa smanjuje mogućnost pogrešaka i olakšava optimizaciju. | |||
=== Duga kompatibilnost unatrag === | |||
Jedna od najvećih posebnosti Fortrana jest iznimna kompatibilnost unatrag. Programi napisani prije 40 ili 50 godina često se mogu kompajlirati i pokrenuti na modernim sustavima bez većih izmjena. Ovo je ključno za znanstvene institucije koje održavaju stare, ali pouzdane numeričke modele. | |||
=== Učinkovito rukovanje poljima (arrayima) === | |||
Fortran ima napredne mogućnosti rada s poljima, uključujući: | |||
* automatsko vektoriziranje, | |||
* rad s višedimenzijskim poljima, | |||
* ugrađene operacije nad cijelim poljima bez eksplicitnih petlji. | |||
Ovo ga čini idealnim za simulacije, fiziku, kemiju, meteorologiju i numeričku analizu. | |||
== Nedostaci == | == Nedostaci == | ||
| Redak 113: | Redak 137: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== Reference == | |||
* IBM Archives – History of FORTRAN | |||
* John W. Backus – The FORTRAN Automatic Coding System | |||
* ANSI/ISO standardi za Fortran 77, 90, 95, 2003, 2008 | |||
* BLAS i LAPACK dokumentacija | |||
* University of California – Fortran Language Overview | |||
== Vanjske poveznice == | == Vanjske poveznice == | ||
[http://www.ibiblio.org/pub/languages/fortran/ch1-1.html Povijest FORTRAN-a] | [http://www.ibiblio.org/pub/languages/fortran/ch1-1.html Povijest FORTRAN-a] | ||
== Izvori == | |||
{{izvori}} | |||
[[Kategorija:Programski jezici]] | [[Kategorija:Programski jezici]] | ||
[[Kategorija:IBM]] | [[Kategorija:IBM]] | ||
Inačica od 7. srpanj 2026. u 08:40
Fortran (ili FORTRAN) ime je za proceduralni, imperativni programski jezik koji je bio razvijen tijekom 50-ih godina dvadesetog stoljeća, i koristi se većinom u znanstvene svrhe. Ime FORTRAN dobiveno je od skraćivanjem engleske složenice Formula Translation.
Povijest razvoja i inačice
Povijest razvoja
Prvi FORTRAN jezični prevoditelj (ili kompilator) razvila je tvrtka IBM za računalo IBM 704 između 1954. i 1957. godine. Razvojnu grupu predvodio je John W. Backus. Kao jezični prevoditelj FORTRAN je nastao u povojima računarstva tj. kada su osnovna svojstva računala bile veoma skromne (mala glavna memorija, spora centralna jedinica) tako da je razvojni tim imao skučeni prostor za razvoj i implementaciju.
Predvoditelj razvojne grupe John W. Backus je također bio i jedan od glavnih inženjera i dizajnera računala IBM 704, računala na kojem je razvijena prva inačica FORTRANA. Uz Backusa u razvojnoj grupi su sudjelovali su sljedeći programeri :
- Sheldon F. Best
- Harlan Herrick
- Peter Sheridan
- Roy Nutt
- Robert Nelson
- Irving Ziller
- Richard Goldberg
- Lois Haibt
- David Sayre
Razvojni tim FORTRANA nije razvio princip programa-prevoditelja te prevođenje složenog programskog jezika u objektni kod, ali oni su prva grupa koja je razvila uspješan složeni programski jezik.
Inačice
- FORTRAN I (1954-1957)
- FORTRAN II (1958)
- FORTRAN III (1958)
- FORTRAN IV (1961)
- FORTRAN 66 (1966)
- FORTRAN 77 (1977)(ANSI standard)
- FORTRAN 90 (1990)(ANSI standard)
- FORTRAN 95 (1995)(ANSI standard)
- FORTRAN 2000 (2000)
- FORTRAN 2003 (2003)
- FORTRAN 2008 (2008)
Posebitosti
Fortran je jedan od najstarijih visokorazinskih programskih jezika, a tijekom desetljeća razvio je skup osobitosti koje ga čine jedinstvenim u znanstvenom i tehničkom računarstvu. Njegove posebnosti proizlaze iz povijesnog razvoja, stroge sintakse, optimizacije za numeričke izračune i dugogodišnje uporabe u inženjerskim disciplinama.
Optimiziran za numeričke izračune i znanstvene aplikacije
Fortran je od samog početka dizajniran za matematičke operacije, što ga čini iznimno brzim u radu s matricama, vektorima i kompleksnim numeričkim algoritmima. Kompajleri Fortrana tradicionalno generiraju vrlo učinkovit strojni kod, posebno za operacije s pomičnim zarezom.
Jednostavna i stroga sintaksa
Sintaksa Fortrana je jednostavna, ali stroga. Povijesno je bio vezan uz formatirane linije (npr. FORTRAN 77), dok modernije inačice (Fortran 90+) uvode slobodni format, modularnost i čitljiviji kod. Stroga sintaksa smanjuje mogućnost pogrešaka i olakšava optimizaciju.
Duga kompatibilnost unatrag
Jedna od najvećih posebnosti Fortrana jest iznimna kompatibilnost unatrag. Programi napisani prije 40 ili 50 godina često se mogu kompajlirati i pokrenuti na modernim sustavima bez većih izmjena. Ovo je ključno za znanstvene institucije koje održavaju stare, ali pouzdane numeričke modele.
Učinkovito rukovanje poljima (arrayima)
Fortran ima napredne mogućnosti rada s poljima, uključujući:
- automatsko vektoriziranje,
- rad s višedimenzijskim poljima,
- ugrađene operacije nad cijelim poljima bez eksplicitnih petlji.
Ovo ga čini idealnim za simulacije, fiziku, kemiju, meteorologiju i numeričku analizu.
Nedostaci
Programski primjer
! This program calculates the area of a tank,
! excluding the bottom.
! The variables are assigned as follows:
!
! R = RADIUS
! H = HEIGHT
! PI = 3.14159
! A = AREA
!
! They are declared with the REAL statement below.
REAL R, H, PI, A
! The OPEN command associates the data file, "PANDAT.DAT",
! in folder "DATA" with logical device 5. If there is an
! error, statement 900 is executed.
OPEN (5, FILE = 'C:\DATA\PANDAT.DAT', ACCESS = 'SEQUENTIAL', &
STATUS = 'OLD', ERR = 900)
! This following section accumulates the sum of
! the input variables.
! The first command reads the data record and
! stores it in memory.
DO
READ (5, FMT = 1, END = 99) R, H
! The next command describes the form and location
! of the data to be read.
1 FORMAT (F4.2,F4.2)
! The next statements assign values to the variables.
PI = 3.14159
A = PI * R**2 + 2 * PI * R * H
! The next section writes the sums to the screen.
! The first command, PRINT, denotes which FORMAT
! statement is to be used, and the variables to be printed.
PRINT 11, H, R, A
! The following FORMAT statement describes how the
! data field is to be written. Notice the semicolon in column 6
! which is used to denote continuation of the previous line.
11 FORMAT (1X,'RADIUS= ',F6.2,10X,'HEIGHT= ',F6.1,10X,'AREA= ', &
& F8.1)
! The following statement completes the loop.
END DO
! The next section prints if the input data is invalid.
900 PRINT 21
21 FORMAT (1X,'INVALID DATA')
! Now we close the file and end program execution.
99 CLOSE (5)
STOP
END
Reference
- IBM Archives – History of FORTRAN
- John W. Backus – The FORTRAN Automatic Coding System
- ANSI/ISO standardi za Fortran 77, 90, 95, 2003, 2008
- BLAS i LAPACK dokumentacija
- University of California – Fortran Language Overview