Veel mensen ervaren Fortran als een archaïsche en 'dode' programmeertaal. De meeste wetenschappelijke en technische code is echter geschreven in Fortran. Als zodanig blijft programmeren in F77 en F90 een noodzakelijke vaardigheid voor de meeste technische programmeurs. Bovendien stellen de nieuwste Fortran-normen (2003, 2008, 2015) de programmeur in staat om zeer efficiënte code te schrijven met minimale inspanning, terwijl alle moderne taalfuncties worden gebruikt, zoals OOP (object-oriented programming). FORTRAN is een afkorting van "formula TRANslation" en is het meest geschikt voor wiskundige en numerieke toepassingen in plaats van grafische of database-applicaties. De meeste fortran-codes nemen tekstinvoer van een bestand of opdrachtregel in plaats van een menu of GUI-interface.

Stappen

  1. 1 Heb een goed idee van wat uw programma zal doen. Bedenk wat voor soort gegevens nodig zijn als invoer, hoe de uitvoer moet worden gestructureerd en neem een ​​deel van de uitvoer op, zodat u de voortgang van uw berekening kunt volgen. Dit is erg handig als u weet dat uw berekening lang zal duren of meerdere ingewikkelde stappen omvat.
  2. 2 Als u al een andere programmeertaal kent, begint u met het leren van de syntaxis en het opzoeken van equivalenten voor verschillende opdrachten. Anders zou u dit moeten doen:
  3. 3 Leer hoe je een basisprogramma kunt compileren en uitvoeren, dit zal je eerste programma zijn, meestal zal het gewoon "Hello World" op het scherm afdrukken en afsluiten. Maak je geen zorgen over alle kleine details van de syntaxis, maar voel je vertrouwd met compileren en uitvoeren.
  4. 4Meer informatie over variabelietypen (INTEGER, REAL, CHARACTER, LOGICAL)
  5. 5 Meer informatie over het concept van variabelen, arrays, functies en subroutines. Variabelen zijn waar informatie wordt opgeslagen, functies en subroutines zijn stukjes code die kunnen worden uitgevoerd en arrays zijn groepen variabelen.
  6. 6 Leer conditionele uitspraken, zoals de "ALS" en "SELECTIE GEVAL" uitspraken. De "ALS" -instructie zal een van uw meest gebruikte verklaringen zijn; u kunt code uitvoeren op basis van of een voorwaarde waar is of niet (bijvoorbeeld of de door de gebruiker geleverde kleur rood was).
  7. 7 Leer loops en de verklaringen "EXIT" en "CYCLE".
  8. 8 Meer informatie over SUBROUTINES en FUNCTIES.
  9. 9Leer recursie (F90 en later) en andere geavanceerde onderwerpen
  10. 10 Lees of zoek enkele boeken over Scientific Programming. Het boek "Numerical Recipes in Fortran" is bijvoorbeeld zowel een goede tekst over wetenschappelijke programmeeralgoritmen als een goede inleiding tot het samenstellen van codes. Meer recente edities bevatten hoofdstukken over hoe te programmeren in een gemengde taalomgeving en parallelle programmering. Een ander voorbeeld is "Modern Fortran in de praktijk" geschreven door Arjen Markus. Het boek geeft inzicht in het schrijven van Fortran-programma's in eenentwintigste-eeuwse stijl in overeenstemming met de nieuwste Fortran-normen.
  1. 1
    • Een eenvoudige "Hello World" -code: Opmerking: u moet elke regel over 7 spaties verdelen
    • C HELLO.F - HALLO WORLD PROGRAMMA
    • C PUBLIEK DOMEIN
    • PROGRAMMA HELLO
    • WRITE (*, *) 'Hallo wereld'
    • EINDE PROGRAMMA
      • Write (*, *) betekent "schrijf ongeformatteerde tekst naar standaarduitvoer"
      • Waarom de ruimtes? Dit is een overblijfsel uit het verleden. In de begintijd van de computer waren er geen terminals. Je hebt gegevens ingevoerd via ponskaarten. Een "C" in de eerste regel op de ponskaart gaf een commentaarregel aan. De volgende 4 velden waren gereserveerd voor regelnummers en de zesde spatie wees erop dat de huidige regel een voortzetting is van de vorige regel. Dit is nodig omdat ponskaarten slechts 80 tekens breed waren. Elke regel langer dan 72 tekens wordt dus afgesneden! Vanwege deze nalatenschap worden fortranegels soms 'kaarten' genoemd
  2. 2 Vergeet niet dat Fortran 90 de "vrije vorm" -broncode heeft ingevoerd, waardoor code kan worden geschreven zonder de spaties en zonder de limiet van 72 tekens. Bijvoorbeeld, "Hallo, Wereld" kan worden geschreven als
    • ! HELLO.F90 - HELLE WERELDPROGRAMMA
    • ! PUBLIEK DOMEIN
    • PROGRAMMA HELLO
    • WRITE (*, *) 'Hallo, wereld!' ! 'Hallo, wereld' weergeven
    • EINDE PROGRAMMA
    • Fortran

Het compileren

Nadat u uw code hebt geschreven, moet u deze compileren. Dit betekent het vertalen van het tekstbestand (dat u kunt lezen) naar een reeks objecten en uitvoerbare bestanden die de computer kan lezen. Laten we zeggen dat je je killer-applicatie schrijft, genaamd killerap.x en je code is in twee bestanden, main.f en morestuff.f.

  1. 1 Compileer de twee fortran-bestanden: . Meestal gebeurt dit door de opdrachten op te geven (de> geeft de prompt van de opdrachtregel aan)
    • > f77 -c main.f
    • en
    • > f77 -c morestuff.f
    • welke de bestanden genereert: main.o en morestuff.o
    • dan
    • f77 -o killerap.x main.o morestuff.o
    • welke main.o en morestuff.o verbindt om je killerap.x te maken. De -c en -o-vlaggen komen redelijk vaak voor ... maar u moet de compilatievlaggen voor uw specifieke compiler lezen.
  2. 2 Versnel uw code door efficiënte code te schrijven. De meeste compilers bevatten echter optimalisatie-algoritmen die de dingen nog meer verbeteren. Deze worden meestal ingeschakeld door een -O, -O2 of -O3-vlag op te nemen bij het compileren (opnieuw afhankelijk van uw versie van fortran).
    • Over het algemeen is het laagste niveau -O of -O2 het beste. Houd er rekening mee dat het gebruik van de meer agressieve optimalisatieoptie fouten in complexe codes kan introduceren en zelfs tot vertragingen kan leiden! TEST JE CODE.