A programozás alapja az, hogy a különböző utasítások lehetővé teszik a programok működésének irányítását, és a logikai feltételek segítenek abban, hogy a program különböző helyzetekben eltérő módon viselkedjen. Az alábbiakban részletesen bemutatjuk, hogyan alkalmazhatóak a logikai utasítások a Fortran programozásban, különös figyelmet fordítva a ciklusok, az if állítások, és a GOTO utasítások használatára.
Először is, vegyünk egy egyszerű példát, amely kiszámítja az első n pozitív egész szám összegét. Az alábbi program segítségével meghatározhatjuk a számok összegét logikai utasítások használatával:
A fenti program logikája meglehetősen egyszerű: először beolvassuk a felhasználótól az n értéket, majd egy ciklus segítségével kiszámítjuk az összegét az első n számnak. A ciklus minden egyes iterációja után hozzáadjuk az aktuális számot az összeghez (is), és folytatjuk a ciklust mindaddig, amíg el nem érjük az n értéket. Amikor i eléri az n értéket, a program a goto 20 utasítással átvált a 20. sorszámú parancsra, amely kiírja a kiszámított összeg értékét, és összehasonlítja azt a formulával kiszámított értékkel.
Ez a program nemcsak a programozás alapvető logikai szerkezetét mutatja be, hanem arra is rávilágít, hogy a Fortran programozási nyelvben a GOTO utasítás hogyan irányíthatja a program folyamát, amely különösen hasznos lehet a bonyolultabb feltételes logikai struktúrák kezelésére.
A következő példában a program validálja a felhasználó által megadott sebességet, hogy biztosítsa, hogy az érték nem negatív vagy nulla. Ha a megadott sebesség érvénytelen, a program leáll egy hibaüzenet kiírásával:
Itt a program a VEL változót használja, amelyet a felhasználó ad meg. Ha a sebesség kisebb vagy egyenlő nullával, a program leáll, és kiír egy hibaüzenetet. A logikai IF állítás használata biztosítja, hogy a program csak érvényes sebességgel folytathassa a működést, megakadályozva ezzel a hibás adatok feldolgozását.
A következő példa a diákok átmeneti státuszát vizsgálja a megszerzett pontszámok alapján. Ha egy diák 40%-nál kevesebb pontot szerez, akkor nem halad át, különben átment:
Ebben a példában a program a teljes pontszámot és a megszerzett pontszámot kérdezi a felhasználótól, majd kiszámítja a százalékos eredményt. Ha a diák pontszáma 40% alatt van, akkor a program azt jelzi, hogy a diák nem felelt meg. Ha a pontszám eléri a 40%-ot vagy annál magasabb, akkor a program jelzi, hogy a diák átment.
A programok ezen változataiban a logikai feltételek és a ciklusok használata lehetővé teszi a dinamikus ellenőrzést és a program működésének irányítását, miközben a felhasználó interakciójának is érdemi szerepe van a program eredményének meghatározásában.
A Fibonacci-számok kiszámítása egy másik példa arra, hogyan alkalmazhatóak a logikai utasítások egy sorozat értékeinek meghatározásában. A Fibonacci-számok olyan számok, amelyek a következő módon alakulnak: 1, 1, 2, 3, 5, 8, 13, 21… A sorozat minden tagja az előző kettő összegéből adódik. A következő program kiszámítja és kiírja a Fibonacci-számokat, amíg azok el nem érik a 20 000-es értéket:
A Fibonacci-számok kiszámítása során a program folytatja az új számok generálását, amíg el nem éri a 20 000-es határt. A számok mellett a program kiszámítja a két egymást követő szám arányát is, amely az előrehaladottabb számok esetében közelít egy állandó értékhez, amit aranymetszésnek neveznek.
Mindezek a példák jól mutatják, hogy hogyan alkalmazhatók a logikai utasítások és a ciklusok a programozás során. A logikai feltételek használata lehetővé teszi a program számára, hogy dinamikusan reagáljon a felhasználói bemenetekre, biztosítva, hogy a program a kívánt módon működjön. A GOTO utasítások pedig segítenek a vezérlés hatékony irányításában, még ha a program logikája bonyolultabb is.
Hogyan oldjunk meg numerikus problémákat Fortran segítségével?
A programozás egyik legnagyobb kihívása, hogy képesek legyünk hatékonyan kezelni és elemezni nagy mennyiségű adatot. A Fortran programozási nyelv, amely különösen hasznos numerikus elemzésekhez, lehetőséget ad arra, hogy gyorsan és egyszerűen végezzünk különféle számításokat. Az alábbiakban bemutatott programok és példák arra mutatnak, hogyan lehet különböző típusú számításokat végrehajtani, kezdve a számok összegzésétől a Pithagoraszi-hármasok kereséséig.
A programok működése alapvetően az iteratív ciklusokon, azaz a "do" ciklusokon alapul. Az egyszerű példáktól kezdve, mint három szám összegzése, egészen a komplexebb problémákig, mint a prímszámok keresése, mindegyik program segít a Fortran alapjainak elsajátításában, miközben szemlélteti az adatstruktúrák, például tömbök használatát is.
Az első példa három szám összegzésére összpontosít, ahol a felhasználó megadja, hány alkalommal szeretné végrehajtani a műveletet. Az inner loop a három szám összegzéséért felelős, míg a külső loop a műveletek számát kezeli. A program így képes több szám összegzésére többször is, és a felhasználó minden alkalommal különböző számokat adhat meg.
A fenti program azt mutatja be, hogyan lehet egyszerűen kezelni a felhasználói inputokat és végezni el ismétlődő számításokat. Az adatok összeadásához szükséges ciklusok jól illusztrálják, hogy miként lehet többszörös műveleteket végezni ugyanazon adatokkal, miközben a program rugalmas marad.
A következő példa a Pithagoraszi-hármasok keresésére összpontosít. A program három számot keres, amelyek kielégítik a híres egyenletet: a² + b² = c². A három szám összegét is kiszámítja. Itt a belső ciklusok a lehetséges értékeket generálják, míg a program kiszűri azokat, amelyek valóban Pithagoraszi-hármasokat alkotnak.
Ez a program nemcsak a hármasokat találja meg, hanem azok összegét is kiszámítja, miközben az eredményeket szépen formázva jeleníti meg.
A programok között szerepelnek olyanok is, amelyek olyan matematikai problémák megoldására szolgálnak, mint a prímszámok keresése, vagy a faktoriálisok összege. A prímszámok kereséséhez a program megvizsgálja az 1 és 100 közötti számokat, és ellenőrzi, hogy oszthatók-e más számokkal. Ha egy szám nem osztható semmivel 1-en kívül, akkor prímszámnak tekinthető.
Ebben a programban láthatjuk, hogy a prímszámok számát is nyomon követhetjük, és a teljesítmény növelése érdekében a ciklusok számát is csökkenthetjük a négyzetgyökös optimalizálással.
Végül a faktoriálisok összegzésének példáját is bemutatjuk. Bár a faktoriálisok gyorsan növekednek, a Fortran lehetőséget biztosít arra, hogy akár nagy számok faktoriálisait is számoljuk, ha nem lépünk túl a 12-es határt, amit a program biztonságosan tud kezelni.
Ez a program az n faktoriálisok összegzését végzi el, mindaddig, amíg az n értéke nem haladja meg a 12-t, mivel a nagyobb számok összegét már nem lehet biztonságosan tárolni az alapértelmezett egész típusú változókban.
A fenti példák bemutatják, hogy a Fortran használata nem csupán egyszerű adatfeldolgozást, hanem komolyabb matematikai problémák megoldását is lehetővé teszi. A Fortran egyik nagy előnye, hogy egyszerű szintaxisával lehetővé teszi a hatékony számításokat és a különböző algoritmusok könnyű implementálását. Azonban, ha a programok komplexebbé válnak, az optimalizálás és a memória kezelése egyre fontosabb szerepet kap.
A Fortran programozás során érdemes megérteni, hogy bár a nyelv rendkívül erőteljes eszközként szolgál numerikus elemzésekhez, a hatékony memória- és számításkezelés alapvető fontosságú, különösen akkor, amikor nagy adatmennyiségekkel dolgozunk vagy komplex matematikai modelleket alkalmazunk.
Hogyan kezeljük a vállalati válságokat és helyreállítsuk a vásárlói bizalmat?
Hogyan működik a kőolaj és a földgáz kitermelésének mechanizmusa a geológiai tározókból?
Hogyan alakult ki az élet a Földön?

Deutsch
Francais
Nederlands
Svenska
Norsk
Dansk
Suomi
Espanol
Italiano
Portugues
Magyar
Polski
Cestina
Русский