FORTRAN 77.

Slides:



Advertisements
Ähnliche Präsentationen
ALP II: Objektorientierte Programmierung Sommersemester 2006
Advertisements

der Universität Oldenburg
0.8.1 Definition des Logarithmus
Forschungszentrum caesar
Struktur-Funktions-Modelle von Pflanzen - Sommersemester Winfried Kurth Universität Göttingen, Lehrstuhl Computergrafik und Ökologische Informatik.
Timm Grams Hochschule Fulda Fachbereich Elektrotechnik und Informationstechnik Rekursive Funktionen in C © Timm Grams, Fulda, (korr.: )
Übung zur Numerische Geologie
10. Grundlagen imperativer Programmiersprachen
X =. Allgemeine Form der Gleichung (Addition): Allgemeine FormLösungshinweis x + a = b a + x = b x = b - a Allgemeine Form der Gleichung (Subtraktion):
Objektorientierung mit VBA
FH-Hof Einbindung von JavaScript Anweisungen
Parser - Verfahren: Rekursiver Abstieg
Dateihandles Um in Perl eine bestimmte Datei zum Lesen, Schreiben oder Anhängen zu öffnen, benötigt man so genannte Dateihandles. Ein Dateihandle ist der.
Algorithmus. Ein Kochrezept, zum Beispiel: Kartoffelbrei.
Statischer Druck (Aufgabe 3) Projektübung Klimamodellierung ( ) – A. Paul.
Perl-Grundlagen Teile der Präsentation von A. Grupp,
Die Skriptsprache Perl (2) Wolfgang Friebel DESY Zeuthen.
Das erste Programm (Folie 16)
14StrukturKlasse1 Von der Struktur zur Klasse von C zu C++ Von Jens Hoffmann
DVG Ablaufsteuerung
Struktogramme IF-ELSE FOR – Schleife
Grundkonzepte Java - Klassendefinition
Einführung in die Programmiersprache C 1
Informatik 1 Übung 2.
Java ohne Kara. Java ohne Kara Ab jetzt: Java ohne Kara Ziel: Erfahrungen sammeln mit ersten Java Programmen.
Textdateien. Definition Die Textdateien sind eine Sammlung von homogene Daten(vom selben Typ), die auf einer externen Gerät gespeichert sind und durch.
Javakurs FSS 2012 Lehrstuhl Stuckenschmidt
Debugging in Lua Universität zu Köln Re-usable Content in 3D und Simulationssystemen Prof. Dr. Manfred Thaller Referent: Artur Wilke.
BIT – Schaßan – WS 02/03 Basisinformationstechnologie HK-Medien Teil 1, 11.Sitzung WS 02/03.
Klicken Sie in der Meldungsleiste auf Bearbeitung aktivieren,
Abteilung für Telekooperation Übung Softwareentwicklung 1 für Wirtschaftsinformatik Dr. Wieland Schwinger
Grundlagen von Objekt-Pascal Erstellt von J. Rudolf überarbeitet von H.Brehm.
Referatsthema - Excel.
Grundkonzepte des Programmierens (mit ActionScript)
4 6 5 Rechenoperationen hoch 2 ??? hoch 2 ??? hoch 2
Permanente Datenspeicherung
Purga - Scriptengine Ein Einblick.
Algorithmen und Datenstrukturen SS 2005
Institut für Wirtschaftsinformatik – Software Engineering, JKU Linz 1 Algorithmen und Datenstrukturen Übungsmodul 2 Dr. W. Narzt u. Dr. A. Stritzinger.
Dynamische Webseiten-Generierung
Driften Spiel des Lebens. Anzahl der Ziehung en Absolute Häufigk eit blau Absolute Häufigk eit rot Relative Häufigk eit blau Relative Häufigk eit rot.
von Saskia- Romina Duwe
Agenda für heute, 7. April, 2005 Bedingte ProgrammausführungBedingte Programmausführung Algorithmische Grundlagen Vergleichsoperatoren, Wahrheitswerte.
Bestandteile von Formeln
PHP: Operatoren und Kontrollstrukturen
Variablen. var meineZahl:Number = 7; meineZahl 7 Name TypWert = Zuweisung von Variablen.
1 Tagesüberblick 2 Lösung Hausaufgabe/Fragen Datei- ein- und ausgabe Schleifen Vergleiche Wahrheit.
Codebaumanalyse Was geschieht in der Methode Codebaum.decodiere, wenn als Parameter der Code 001 übergeben wird? Gib die Zeilennummern der durchlaufenen.
Einführungstutorial: Linux Konsole
1 Tagesüberblick 3 Lösung Hausaufgabe/Fragen Zeilenweises Lesen von Dateien Schleifenausbrüche Die Variable $_ Textfunktionen.
1 Tagesüberblick 4 Lösung Hausaufgabe/Fragen Mustervergleiche.
Tabellen in Word for Windowscomputeria, Urdorf Tabellen in Word for Windows computeria Urdorf / Dieter Eckstein.
Übung 4 - MdMT Methoden der Medizintechnik Übung zur Vorlesung Folge 4 – Signale verarbeiten I Audiodaten einlesen.
Java Syntaxdiagramme Buchstabe A B Z a z ... Ziffer
Mehrfachausführungen Schleifen in VB 2010 ee. Programmidee: Der Anwender gibt eine Zahl ein, und das Programm gibt die Mehrfachen dieser Zahl aus (das.
Übersicht Nachtrag zu Ausdrücken
8. Juni 2005Autor: Walter Leuenberger Computeria Urdorf Treff vom 8. Juni 2005 CDs & DVDs Brennen.
1 Lösung Hausaufgabe 5-1 Seite 1 #!perl -w # Datei Oeffnen und Variablen initialisieren $infile = "daten5-3.txt"; $im=$iw=$sm=$sw=0; open (IN,$infile)
Anführungszeichen?! echo 'Apfel$atf'; // ergibt: Apfel$aft
(Syntax, Strings/Zahlen, Variablen, Arrays)
Wie würden Sie die abgebildete Aufgabe lösen? Müssen Sie bestimmte Rechenoperationen zuerst durchführen? Gehört ein Rechenzeichen zur vorhergehenden oder.
1 Tagesüberblick 7 Lösung Hausaufgabe/Fragen mehrdimensionale Datenstrukturen Module Fehlersuche Zusammenfassung Feedback.
Wozu Maple? Symbolische Algebra Manche Sachen soll man besser nicht von Hand machen –kleine Rechnungs Fehler können mehrere Millionen werden – am besten.
Variablen und Datentypen
Programmieren 1 C++ Aufgaben / Übungen.
By Thorsten Zisler 1 SQL Datenbank Anbindung an den Supervisor.
FOR Anweisung. Aufgabe : Ausgabe aller ganzen Zahlen von 0 bis 100 auf dem Bildschirm.
Inhalte der Übungen 1.Grundlagen, Ein- und Ausgabe 2.Kontrollstrukturen (Projekt 1) 3.Funktionen 4.Zeiger, Felder (Projekt 2) 5.Strings, Strukturen 6.Fileverarbeitung.
Variable Beim Ausschalten gehen alle in den Variablen gespeicherten Informationen verloren! Zweck: Speichern von Informationen, z. B. Zahlen Modellvorstellung:
Rechenausdrücke (Terme) – Fachbegriffe - Rechenregeln
 Präsentation transkript:

FORTRAN 77

Allgemeines Nicht mehr als 70 Zeichen pro Zeile Mindestens die ersten 7 Zeichen müssen leer bleiben Komentare mit vorgestelltem C

Die erste Zeile Allgemeine Deffinition implicit double precision (a-h,o-z) wenig schreibarbeit man kann keine Deffinitionen vergessen man kann nicht alle Variablennamen verwenden (z.B. mü, nü,...) Spezielle Deffinition integer a, b real c, d double precision e, f character g, h Variablennamen beliebig wählbar man muß die Definition ändern, wenn man im Programm was ändert Zwei Variablen dürfen nie den gleichen Namen haben!

Die Grundrechnungsarten Addition, Subtraktion, Multiplikation, Division: a = b + c a = b – c a = b * c a = b / c Potenzen und Wurzeln a = b**c a = sqrt(b) = a = b**(1/c) = sonstige Funktionen: cos, sin,... Achtung Fortran rechnet in Radians also: z.B. sin(45) schreibt man in Fortran: sin(45*/180) Logarithmus inverse Funktionen Informationen im Web: http://www.fortran.com/fortran/F77_std/rjcnf0001.html

Ein-, Ausgeben & Die letzte Zeile read*, a, b, c print*, a, b, c stop end muß immer am Ende stehen!

und schon kanns los gehen! Fortran Compiler für Windows: z.B. Force 8 http://myweb.lmu.edu/dmsmith/Math282.html für Linux: g77 –o programm –O programm.f

Beispiel Das Programm soll mit zwei angegebene Zahlen alle Grundrechnungsarten durchführen...

Einlesen aus einem File Aus einem Textfile Zahlen einlesen: open(unit=11, file='zahlen.txt', status='old') read(11,*) b, c close(11) Das File zahlen.txt muß zuerst angelegt werden Leerzeichen trennen die Einträge

Schreiben in ein File Ergebnisse in ein Textfile schreiben: open(unit=12, file='ergebnis.txt', status='unknown') write(12,*) a, a1, a2 close(12)

mehrere Zeilen lesen bzw. schreiben open(unit=11, file='zahlen.txt', status='old') open(unit=12, file=‚ergebnis.txt', status=‚unknown') read(11,*) b, c read(11,*) b1, c1 read(11,*) b2, c2 Usw... write(12,*) a, a1, a2 write(12,*) aa, aa1, aa2 close(11) close(12)

Und jetzt das gleiche Bsp... Diesesmal wollen wir mehrere Zahlen eingeben, mit denen die gleichen bzw. verschiedene Rechenoperationen durchgeführt werden sollen...

Do - Schleifen implicit double precision (a-h,o-z) open(unit=11, file='zahlen.txt', status='old') open(unit=12, file=‘ergebnis.txt', status=‘unknown') do 100 n=1, 4 read(11,*) b, c a=b+c write(12,*) a 100 continue close(11) close(12) stop end

nur einlesen dimension b(10), c(10) do 100 n=1,7 read(11,*,end=200) b(n), c(n) 100 continue 200 stop end damit lassen sich beliebig viele Zahlen einlesen und z.B. in do – Schleifen verwenden end=200 ..... beendet die do – schleife wenn die letzte Zeile eingelesen ist Die Marken (z.B. 100, 200) müssen gleich am Anfang einer Zeile stehen

nocheinmal das gleiche Bsp. Diesmal wollen wir die Zahlen mit Hilfe einer do – Schleife einlesen bzw. auch rausschreiben...

If - Abfrage z.B. bei mehreren Befehlen: if(a.gt.0) write(12,*) a if(a.gt.0) then write... b=c+d usw. endif

mögliche if – Abfragen (a.eq.0) ... ist gleich (a.gt.0) ... größer als (a.lt.0) ... kleiner als (a.ge.0) ... größer oder gleich (a.le.0) ... kleiner oder gleich

Kombinationen von if - Abfragen Bedingung: a<b und c>d if(a.lt.b.and.c.gt.d) then.... Bedingung: a<b oder c<d if(a.lt.b.or.c.lt.d) then...

if - else z.B. else if(a.gt.0) then write(12,*) a else write(12,*) b end if z.B. else if if(a.gt.0) then write(12,*) a else if(a.lt.-5) write(12,*) b end if

ein letztes Mal das gleiche Beispiel Wir wollen jetzt nur die Zahlen > 0 in das ergebnis – file geschrieben haben...

der goto - Befehl nicht gerne gesehen, aber trotzdem recht nützlich: Anwendung: goto Referenz z.B.: goto 300 das Programm springt dann sofort zu der Marke 300

bei grösseren Programmen kann es sehr sinnvoll sein Unterprogramme zu verwenden: ein Beispiel aus einem LIE – Integrator Programm:

Unterprogramme – Bsp. 1 CALL PARAM C....EINLESEN DER PARAMETER SUBROUTINE PARAM TINV = 1 / T READ(11,*) STP,PRT read(11,*) xlim READ(11,*) INI READ(11,*) N READ(11,*) NM,NML READ(11,*) LOGEPS READ(11,*) SWMINI READ(11,*) SWSUM,NSTEP RETURN END

Unterprogramme – Bsp. 2 call TRUAN C MEAN ANOMALY ---> TRUE ANOMALY SUBROUTINE TRUAN(EKAR,T) IMPLICIT REAL(A-H,O-Z) IMPLICIT INTEGER (I-N) Q=(1.-EKAR)/(1.+EKAR) SQ=SQRT(Q) RSQ=1./SQ T=T*PI/180 RETURN END