Programmierung mit FORTRAN Von Dr.rer.nat. Wolfgang Brauch Professor an der Fachhochschule Ravensburg - Weingarten 6., durchgesehene Auflage Mit 48 Bildern, 66 Aufgaben und 61 Beispielen Technische Universität Darmstadt FACHBEREICH INFORMATIK BIBLiOT H E K Inventar-Nr.: Sachgebiete: Standort: B. G. Teubner Stuttgart 1984
7 INHALTSVERZEICHNIS 1 Einleitung 1.1 Allgemeines 11 1.2 Grundbegriffe der Informatik 13 2 Hardware 2.1 Peripherie 16 2.2 Zentraleinheit 27 2.3 Kanalprinzip. Datenfernverarbeitung 33 2.4 Aufgaben 37 3 Software 3.1 Codierung von Daten und Befehlen 39 3.2 Programmiersprachen 47 3.3 Betriebssystem 51 3.4 Betriebsarten 54 3.5 Aufgaben 56 4 Entwicklung eines Programms 4.1 Problemanalyse 57 4.2 Arbeitsschritte bei der Herstellung 58 4.3 Ausführung 61 5 Programmablaufplan 5.1 Sinnbilder. Strukturen 63 5.2 Arbeitsmethodik. Qualitätsmerkmale. Fehler 7o 5.3 Beispiele 75 5.4 Aufgaben 96 6 Elemente von.fortran 6.1 Kpnstante. Variable. Funktionen. Ausdrücke 98 6.2 Arithmetische- und Steueranweisungen 107 6.3 Ein- und Ausgabe-Anweisungen 113 6.4 Beispiele 124 6.5 Aufgaben 129 7 Laufanweisung. Bereiche 7.1 Laufanweisung 130 7.2 Bereiche (indizierte Variable) 138
-8-7.3 Aufgaben 152 8 Unterprogramme. Spezifikations-Anweisungen 8.1 Einteilung der Unterprogramme 156 8.2 Funktions-Unterprogramme 159 8.3 Subroutine-Unterprogramme 165 8.4 Spezifikations-Anweisungen 168 8.5 Aufgaben 176 9 Spezielle Ein- und Ausgabe Verfahren 9.1 DATA-Anweisung 178 9.2 Periphere magnetische Speicher 179 9.3 Graphische Ausgabe 186 9.4 Aufgaben 196 10 Testen von Programmen 198 ANHANG Lösungen der Aufgaben 201 Weiterführende Literatur 221 Sachverzeichnis 222 LISTE DER BEISPIELE Bei jedem Beispiel wird nach Möglichkeit sowohl das mathematische bezw. technische als auch das programmiertechnische Problem angegeben. 1. Umwandlungen aus dem Sedezimalsystem 40 2. Subtraktion durch Addition des Komplements 43 3. Darstellung von Gleitpunktzahlen 45 4. Arithmetische Anweisungen 65 5. Ein- und Ausgabe-Anweisungen 66 6. Sortieren von drei Zahlen 77 Programmablaufplan mit Maschen 7. Lage eines Punktes in der Ebene 77 Programmablaufplan mit Maschen 8. Produktsumme mit gegebener Anzahl der Summanden 80 Plan mit Zählschleife 9. Produktsumme mit Datenendkarte 82 Datenende
-9-10. Funktionstafel 83 Plan mit induktiver Schleife 11. Numerische Differentiation 83 Plan mit iterativer Schleife 12. Flächenmomente von Profilen 85 Plan mit Verteiler 13. Nullstelle einer Funktion 87 Strukturierte Programmierung 14. Quadratische Gleichung 90 Plan mit Maschen und Schleifen 15. Mischen zweier Dateien 94 Plan mit Maschen und Schleifen 16. FORTRAN-Ausdrücke 106 17. Programmausschnitt und Plan mit Maschen 110 18. Programmausschnitt und Plan mit Schleife 111 19. Lesen einer ganzen Zahl 117 20. Ausgabe von gebrochenen Zahlen 118 21. Lesen und Schreiben von Text im H-Format 119 22. Lesen von Text im A-Format 120 23. Ein- und Ausgabe von Sätzen 121 24. Wiederholungsfaktor und innere Klammern 123 25. Sortieren von drei Zahlen 124 Maschen mit IF-Anweisung 26. Lage eines Punktes in der Ebene 124 Maschen mit IF- und GO TO-Anweisung 27. Produktsumme mit gegebener Anzahl der Summanden 124 Induktive Schleife mit IF-Anweisung 28. Produktsumme mit Datenendkarte 124 Datenendkarte 29. Funktionstafel 126 Rundungsfehler 30. Numerische Differentiation 126 Iterative Schleife mit IF-Anweisung 31. Flächenmomente von Profilen 127 Verteiler mit computed GO TO-Anweisung 32. Nullstelle einer Funktion 127 Iterative Schleife mit IF-Anweisung 33. Quadratische Gleichung 128 Maschen und Schleifen mit IF-Anweisung 34. Produktsumme mit gegebener Anzahl der Summanden 131 DO-Anweisung mit einfachen Variablen
-10-35. Produktsumme mit Endkarte 133 Herausspringen aus einer DO-Schleife 36. Tafel der Winkelfunktionen 133 Geschachtelte DO-Schleifen mit einf. Variablen 37. DIMENSION-Anweisung 139 38. Produktsumme mit Endkarte 140 DO-Anweisung mit indizierten Variablen 39. Ein- und Ausgabe von Bereichen 141 40. Eingabe im A- und H-Format 143 41. Horner Schema 143 DO-Schleifen mit indizierten Variablen 42. Gewicht von Stahlrohr 146 Implizite Laufanweisung 43. Sortieren von n Zahlen 149 Geschachtelte DO-Schleifen mit Bereichen 44. Drucken einer Matrix 150 Zweifach indizierte Variable 45 Matrizenmultiplikation 151 DO-Schleifen mit zweifach indizierten Variablen 46. Runden einer Zahl 161 Funktions-Unterprogramm 47. Produktsumme mit gegebener Anzahl der Summanden 161 Funktions-Unterprogramm 48. Funktionsanweisungen 162 49. Ausgleichung einer Geraden 164 Aufruf von Funktions-UP 50. Subroutine-Unterprogramme 166 51. Sortieren von drei Zahlen 167 Aufruf von Subroutine-UP 52. Komplexer Widerstand 167 Aufruf von Subroutine-UP 53. Nullstelle einer Funktion 170 EXTERNAL-Anweisung 54. COMMON-Anweisung 173 55. Glätten von Meßwerten 173 COMMON-Anweisung 56. EQUIVALENCE-Anweisung 175 57. DATA-Anweisung 179 58. Lesen und Schreiben auf Magnetband 180 59. Direkter Zugriff zur Magnetplatte 184 60. Funktionsdiagramm mit printer 186 61. Funktionsdiagramm mit plotter 195