Teil 4 FORTRAN. Prof. Dr. Gerhard Goos, Dr. Sabine Glesner Höhere ProgrammiersprachenWS 2002/03 (5. Foliensatz) 1

Größe: px
Ab Seite anzeigen:

Download "Teil 4 FORTRAN. Prof. Dr. Gerhard Goos, Dr. Sabine Glesner Höhere ProgrammiersprachenWS 2002/03 (5. Foliensatz) 1"

Transkript

1 Teil 4 FORTRAN Prof. Dr. Gerhard Goos, Dr. Sabine Glesner Höhere ProgrammiersprachenWS 2002/03 (5. Foliensatz) 1

2 Inhaltsübersicht HPS WS 2002/03 - Grundlagen (1,2,3) - Konzepte imperativer Programmiersprachen (3,4) - Deklarative Programmiersprachen (5,6) - Objektorientierte Programmiersprachen (6,7) - Wissenschaftliches Rechnen: Fortran (8) - Formale Semantik - Operationale Semantik mit ASMs (9) - Operationale Semantik mit natürlicher Semantik und SOS (10) - Denotationelle Semantik (11) - Axiomatische Semantik (12) - Skriptsprachen (13) - Wirtschaftsanwendungen: - Cobol (14) - Abap/4 (15)

3 Teil 4 FORTRAN (FORmula TRANslator) Fortran I: 1954 Fortran IV: 1966 Fortran 77: 1977 Fortran 90: 1990 Fortran 95: 1995 high performance FORTRAN (HPF): Fortran 90 für SIMD-Rechner Prof. Dr. Gerhard Goos, Dr. Sabine Glesner Höhere ProgrammiersprachenWS 2002/03 (5. Foliensatz) 3

4 Programmformate Festes Programmformat veraltet Ursprung im Lochkartenformat Freies Programmformat Alle neueren FORTRAN Versionen Standardzeichensatz: Großbuchstaben und _, Ziffern, Sonderzeichen Kleinbuchstaben äquivalent zu Großbuchstaben (Vorsicht an externen Schnittstellen: foo = FOO) Prof. Dr. Gerhard Goos, Dr. Sabine Glesner Höhere ProgrammiersprachenWS 2002/03 (5. Foliensatz) 4

5 Festes Format Spalte 1: Kommentarzeichen ( C, *,! ) 1-5 Marke als Sprungziel (nat. Zahl) beliebige Position, führende 0 ignoriert 6 beliebiges Zeichen kennzeichnet Fortsetzungszeile, sonst leer 7-72 Programm Kommentar (fortlauf. Numerierung) Keine Unterscheidung Bezeichnern und Wortsymbolen Leerzeichen in Wortsymbolen erlaubt Wortsymbole in Ausdrücken in der Form.gt. d.h. mit Punkt eingegrenzt Fortran 77: max. 8 Zeichen für Bezeichner Beachte: Alle Anweisungen in Fortran beginnen mit Wortsymbol außer Zuweisung und Definition Anweisungsfunktion (statement function) Prof. Dr. Gerhard Goos, Dr. Sabine Glesner Höhere ProgrammiersprachenWS 2002/03 (5. Foliensatz) 5

6 Beispiel PROGRAM SUMME C Dies ist ein Fortran 77 Programm COMMON /CB/ M CALL TOTAL WRITE (6,9) M 9 FORMAT (I10) END SUBROUTINE TOTAL! dies ist ein Zeilenendkommentar COMMON /CB/ ITOTAL ITOTAL = 0 DO 8 I = 1, 100 ITOTAL = 1ITOTAL + I 8 CONTINUE END 2 Übersetzungseinheiten Prof. Dr. Gerhard Goos, Dr. Sabine Glesner Höhere ProgrammiersprachenWS 2002/03 (5. Foliensatz) 6

7 Beispiel Fortran 90/95 PROGRAM SUMME C In Fortran 90/95 geht das auch so: INTEGER ITOTAL CALL TOTAL(100) PRINT *, ITOTAL CONTAINS SUBROUTINE TOTAL(N) ITOTAL = 0 DO I = 1, N ITOTAL = ITOTAL + I END DO END SUBROUTINE TOTAL END PROGRAM SUMME 1 Übersetzungseinheit Prof. Dr. Gerhard Goos, Dr. Sabine Glesner Höhere ProgrammiersprachenWS 2002/03 (5. Foliensatz) 7

8 Beispiel Fortran 90/95 mit Modul MODULE SUMMIEREN CONTAINS FUNCTION TOTAL(N) INTEGER TOTAL, N, I TOTAL = 0 DO I = 1, N TOTAL = TOTAL + I END DO END FUNCTION TOTAL END MODULE SUMMIEREN PROGRAM SUMME C In Fortran 90/95 geht das auch so: USE SUMMIEREN PRINT *, TOTAL (100) END PROGRAM SUMME 2 Übersetzungseinheiten Prof. Dr. Gerhard Goos, Dr. Sabine Glesner Höhere ProgrammiersprachenWS 2002/03 (5. Foliensatz) 8

9 Freies Format Zeilen bis 132 Zeichen, Spaltenposition bedeutungslos Strichpunkt trennt mehrere Anweisungen auf gleicher Zeile Fortsetzungszeichen: & am Zeilenende Leerzeichen in Wortsymbolen verboten max. 31 Zeichen für Bezeichner Prof. Dr. Gerhard Goos, Dr. Sabine Glesner Höhere ProgrammiersprachenWS 2002/03 (5. Foliensatz) 9

10 Klassifikation Unterscheide Ausführbare Anweisungen ASSIGN, DO, PRINT, IF, END IF,... Nichtausführbare Anweisungen: Spezifikationsanweisungen FORMAT, COMMON, DATA,... Typvereinbarungen (in Wahrheit Variablenvereinbarungen) INTEGER, COMPLEX,... Strukturierungsanweisungen FUNCTION, SUBROUTINE, MODULE,... Prof. Dr. Gerhard Goos, Dr. Sabine Glesner Höhere ProgrammiersprachenWS 2002/03 (5. Foliensatz) 10

11 Türme von Hanoi program hanoi write (6,*) 'Wert fuer N an: '; read (5,*) n call hanoi0 (n,'a','b','c') contains subroutine move (von,nach)... end subroutine move recursive subroutine hanoi0 (n,von,nach,ueber) integer :: n character :: von, nach, ueber if (n.eq. 1) then call move (von, nach) else if (n.gt. 1) then call hanoi0 (n-1, von, ueber, nach) call move (von, nach) call hanoi0 (n-1, ueber, nach, von) end if end subroutine hanoi0 end program hanoi Prof. Dr. Gerhard Goos, Dr. Sabine Glesner Höhere ProgrammiersprachenWS 2002/03 (5. Foliensatz) 11

12 Programmaufbau Hauptprogramm, ausführbar: PROGRAM name... CONTAINS... END PROGRAM name Externes Unterprogramm, ausführbar: SUBROUTINE name... CONTAINS... END SUBROUTINE name FUNCTION name... CONTAINS... END FUNCTION name Modul, nicht ausführbar: MODULE name... CONTAINS... END MODULE name Block-Data, nicht ausführbar: BLOCK DATA name... END BLOCK DATA name Prof. Dr. Gerhard Goos, Dr. Sabine Glesner Höhere ProgrammiersprachenWS 2002/03 (5. Foliensatz) 12

13 Vordefinierte Datentypen INTEGER: Ausschnitt der ganzen Zahlen, parametrisiert mit KIND Attribut REAL: Annäherung an reelle Zahlen mit KIND COMPLEX: KIND wie REAL LOGICAL: Boolesche Werte, KIND für Anzahl Bytes CHARACTER: KIND für Zeichendarstellung, LEN für Anzahl Bytes KIND: Parametrisierung kennzeichnet Genauigkeit/Werteumfang, z.b. INTEGER (KIND = HIGH) zufall INTEGER (KIND = SHORT) wochentag COMPLEX (KIND = HIGH) z HIGH, SHORT,... benannte ganzzahlige Konstante Fortran 77: Neben Typ REAL noch DOUBLE PRECISION Vereinbarungen in der Form INTEGER i,j! alt INTEGER (Zusätze) i,j! alt, z.b. Zusatz SAVE: Wert erhalten INTEGER :: i,j! neu INTEGER, Zusätze :: i,j! neu implizite Vereinbarung: Bezeichner beginnend mit I,J,K,L,M,N ganzzahlig, sonst real Prof. Dr. Gerhard Goos, Dr. Sabine Glesner Höhere ProgrammiersprachenWS 2002/03 (5. Foliensatz) 13

14 Weitere Datentypen Reihungen statische offene Verbunde Zeiger und Ziele von Zeigern Prof. Dr. Gerhard Goos, Dr. Sabine Glesner Höhere ProgrammiersprachenWS 2002/03 (5. Foliensatz) 14

15 Statische Reihungen Reihungen spaltenweise gespeichert! (column major order) reihung ::= typ [par][, attribute] [, DIMENSION ( indexgrenzen )]:: name [( indexgrenzen )][=ausdruck] indexgrenzen ::= [untergrenze : ] obergrenze untergrenze und obergrenze konstant Indexgrenzen gehören zum Typ INTEGER A(100)! Untergrenze 1 REAL, DIMENSION(0:100,0:100) :: x mit Initialisierung durch DATA Anweisung: REAL :: x (100,100)= RESHAPE((/ ((1.0,K=1,J-1),& (0.0,K=J,100), J=1,100) /), SHAPE = (/ 100, 100 /) ) REAL :: y (100,100) DATA ((y (K,J), K=1,J-1), J= 1,100) / 4050*1.0 / DATA ((y (K,J), K=J,100), J= 1,100) / 5050*0.0 / Reihungszugriff: a(i,j)! kein Unterschied zu Funktionsaufruf a(i,:)! i-te Zeile a(i,10:1:-1)! Elemente a i,10, a i,9,...,a i,1 Prof. Dr. Gerhard Goos, Dr. Sabine Glesner Höhere ProgrammiersprachenWS 2002/03 (5. Foliensatz) 15

16 Equivalence Anweisung Ziel: Überlagerung mehrerer Variablen, meistens Reihungen, im Speicher Methode: Angabe von Gruppen von Variablen, insbesondere Reihungselementen, die den gleichen Speicherplatz einnehmen sollen; der Rest der Reihungen wird dann entsprechend überlagert. Vorsicht! Widersprüche werden beanstandet! REAL A(10,10), B(100) EQUIVALENCE (A,B) REAL A(100) COMPLEX Z(50) EQUIVALENCE (A,Z) REAL A(100) REAL X,Y,Z(98) EQUIVALENCE (Y,A(1)),(X,A(100)),Z(50),A(51)) Prof. Dr. Gerhard Goos, Dr. Sabine Glesner Höhere ProgrammiersprachenWS 2002/03 (5. Foliensatz) 16

17 Offene Reihungen Ziel wie in Pascal: Vereinbarung von Parametern oder Variablen, deren Umfang bei Aufruf oder durch explizite Allokation festgelegt wird Anzahl der Indexgrenzen, repräsentiert durch Doppelpunkt mit/ohne Grenzen, gehört zum Typ SUBROUTINE f (reihung, n, m) INTEGER n, m REAL, DIMENSION(0:n,0:m) :: reihung REAL A(:,:) INTEGER, DIMENSION (:,:) :: K CHARACTER, ALLOCATABLE :: C (:,:) ALLOCATE (C(100,100)) REAL A(2:4,*)! Werte werden so verteilt, daß 3 Zeilen entstehen Prof. Dr. Gerhard Goos, Dr. Sabine Glesner Höhere ProgrammiersprachenWS 2002/03 (5. Foliensatz) 17

18 Verbunde Typdeklaration: typdef ::= TYPE [[,zugriffsrecht] ::] name [ PRIVATE ][ SEQUENCE ] komp* END TYPE [name] komp ::= typ [par][[,attribute] ::] namesliste Variablendeklaration vardekl ::= typ [par][[,attribute] ::] namesliste Komponentenzugriff: zugriff ::= verbundname % komponentenname Prof. Dr. Gerhard Goos, Dr. Sabine Glesner Höhere ProgrammiersprachenWS 2002/03 (5. Foliensatz) 18

19 Zeiger und ihre Ziele zeiger ::= typ [par][,attribute], POINTER :: name [(:[,:]*)] ziel ::= typ [par][,attribute], TARGET :: name [( indexgrenzen )][=ausdruck] Rekursive Datenstrukturen TYPE liste INTEGER wert TYPE (liste), POINTER :: next END TYPE liste TYPE (liste), TARGET :: anker TYPE (liste), POINTER :: temp, hinten hinten = anker ALLOCATE(temp) hinten%next = temp Prof. Dr. Gerhard Goos, Dr. Sabine Glesner Höhere ProgrammiersprachenWS 2002/03 (5. Foliensatz) 19

20 Ausdrücke Numerische Datentypen: Addition, Subtraktion, Division, Exponentiation, Negation, Identität, weitere mathematische Funktionen, Vergleiche Vektoren und Matrizen: elementweise Operationen, Skalarprodukt, Transposition, Matrixmultiplikation, Maximum, Minimum, Summe, Produkt Logischer Datentyp: Negation, Konjunktion, Disjunktion, Äquivalenz, Antivalenz. Matrizen: ALL und ANY. Zeichen: Verkettung zu Feldern. Selbstdefinierte Operationen möglich. Prof. Dr. Gerhard Goos, Dr. Sabine Glesner Höhere ProgrammiersprachenWS 2002/03 (5. Foliensatz) 20

21 Prioritäten 1 selbstdefiniert einstellig 2-4 Numerische Operationen, 5 Verkettung, 6 Vergleichsoperatoren, 7-10 Logische Operatoren, 11 selbstdefinierte zweistellig Prof. Dr. Gerhard Goos, Dr. Sabine Glesner Höhere ProgrammiersprachenWS 2002/03 (5. Foliensatz) 21

22 Ablaufsteuerung Sprünge Bedingte Anweisungen und Sprünge Schleifen Prozeduren und Funktionen Prof. Dr. Gerhard Goos, Dr. Sabine Glesner Höhere ProgrammiersprachenWS 2002/03 (5. Foliensatz) 22

23 Sprünge goto ::= GOTO label berechnetes goto ::= GOTO ( label1, label2, label3...) skalarer numerischer ausdruck Prof. Dr. Gerhard Goos, Dr. Sabine Glesner Höhere ProgrammiersprachenWS 2002/03 (5. Foliensatz) 23

24 Bedingte Anweisungen und Fallunterscheidungen arithmetisches if ::= IF ( skalarer ausdruck ) label 1, label 2, label 3 inzwischen veraltet logisches if ::= IF ( logischer ausdruck ) anweisung* block if ::= IF ( logischer ausdruck ) THEN... [ELSE IF...]*[ELSE...] END IF Fallunterscheidung case ::= SELECT CASE ( ausdruck ) [CASE ( ausdruck )... ]* [CASE DEFAULT... ] END SELECT Prof. Dr. Gerhard Goos, Dr. Sabine Glesner Höhere ProgrammiersprachenWS 2002/03 (5. Foliensatz) 24

25 Schleifen schleife ::= [name:] DO schleifensteuerung... END DO [name] alt: schleife ::= [name:] DO label schleifensteuerung... label ende anweisung ende anweisung ::= continue beliebig schleifensteuerung ::= leer for while for ::= i = anfang, ende [,increment] [,] while while ::= WHILE ( logischer ausdruck ) exit ::= EXIT [name] cycle ::= CYCLE [name] Prof. Dr. Gerhard Goos, Dr. Sabine Glesner Höhere ProgrammiersprachenWS 2002/03 (5. Foliensatz) 25

26 Zuweisungen, forall-schleifen Normale Zuweisung: Variable = Ausdruck Zeigerzuweisung: Zeiger => Zielobjekt maskierte Reihungszuweisung: real A(10,10) where (A /= 0.0) A_NEU = 1.0/A elsewhere A_NEU = 1.0 END WHERE forall-schleife: forall (I = 1:N, J = 1:M) A(I,J) = I+J zusätzlich kann ein logischer Ausdruck einzelne Zweige ausblenden Prof. Dr. Gerhard Goos, Dr. Sabine Glesner Höhere ProgrammiersprachenWS 2002/03 (5. Foliensatz) 26

27 Prozeduren und Funktionen Externe und Interne Prozeduren [RECURSIVE] FUNCTION name... END FUNCTION name Ergebnis an Funktionsname zuweisen, dieses als Variable vereinbaren [RECURSIVE] SUBROUTINE name... END SUBROUTINE name ENTRY name... END SUBROUTINE name weiterer Eingang in Unterprogramm Reine Prozeduren (PURE procedures): Prozeduren ohne Nebenwirkung (für FORALL) Aufruf von Unterprogrammen: CALL subroutinename(...) Parameterübergabe: Referenzaufruf oder Wert/Ergebnisaufruf, oder INTEND(IN) INTEND(OUT) INTEND(INOUT) Parameter können optional sein generische Prozedur: überladene Prozedur, zur Auflösung Argumentliste benutzen Block Data: Unterprogramm zur (statischen) initialisierung von COMMON Zonen Prof. Dr. Gerhard Goos, Dr. Sabine Glesner Höhere ProgrammiersprachenWS 2002/03 (5. Foliensatz) 27

28 Ein-/Ausgabe E/A durch die Anweisungen READ, PRINT, WRITE, OPEN, CLOSE, INQUIRE, BACKSPACE, ENDFILE, REWIND (keine Prozeduraufrufe!) Dateien intern gekennzeichnet durch ganze Zahlen (unit number) Standard-Eingabe: 5, Standardausgabe: 6, (Standards, wenn nichts angegeben) unterscheide externe (echte) und interne Dateien (lokal im Programm) Zugriffsmethoden: sequentiell, direkt formatierte Text-E/A: READ (UNIT=5,FMT=FMT) EA-Liste oder kürzer READ FMT EA-Liste, analog für WRITE (PRINT erlaubt nur die Kurzform) EA-Liste enthält Variable/Ausdruck oder Schleifen (EA-Liste, i=anfang,ende) auch Ausgabe von ganzen Reihungen und Verbunden erlaubt Format FMT: * (implizite Formatierung), Textkonstante/Marke einer Formatanw. 'A6', 'E10.3', 'F10.3', 'I3', 'G10.3', '5I3', '3(I3,2F10.3)' formatiert Texte, reelle Zahlen mit/ohne Exponent, ganze Zahlen, beliebiges,... Formatkontrolle wiederholt anwenden, wenn nicht ausreichend viele Spez. erstes Zeichen bei Ausgabeformat: Druckersteuerung: Zwi: neue Zeile, 0: mit Leerzeile, 1: neue Seite, +: kein Zeilenvorschub Prof. Dr. Gerhard Goos, Dr. Sabine Glesner Höhere ProgrammiersprachenWS 2002/03 (5. Foliensatz) 28

29 Module in Fortran 77 Benannte Common Bereiche Partitionierung bezüglich der verwendeten globalen Daten ist Modularisierung Prof. Dr. Gerhard Goos, Dr. Sabine Glesner Höhere ProgrammiersprachenWS 2002/03 (5. Foliensatz) 29

30 Module in Fortran 90 MODULE name [ use ] [ deklarationen ] [ typdefinitionen ] [ schnittstellen ] [ [ CONTAINS [ module-unterprogramme ] ] END MODULE Prof. Dr. Gerhard Goos, Dr. Sabine Glesner Höhere ProgrammiersprachenWS 2002/03 (5. Foliensatz) 30

31 Schnittstellen provide ::= INTERFACE [ OPERATOR ] name MODULE PROCEDURE prozedurname... END INTERFACE require ::= INTERFACE prozedurkopf... END INTERFACE Prof. Dr. Gerhard Goos, Dr. Sabine Glesner Höhere ProgrammiersprachenWS 2002/03 (5. Foliensatz) 31

FORTRAN FORTRAN. Teil 4. Programmformate. Teil 4. Inhaltsübersicht HPS WS 2003/04

FORTRAN FORTRAN. Teil 4. Programmformate. Teil 4. Inhaltsübersicht HPS WS 2003/04 Teil 4 FORTRAN Inhaltsübersicht HPS WS 2003/04 - - Grundlagen (1,2) - Konzepte imperativer Programmiersprachen (2,3) - Deklarative Programmiersprachen (4) - Objektorientierte Programmiersprachen (5,6)

Mehr

Fortran 90. Lehr- und Handbuch von Dr. Thomas Michel Sietec Consulting GmbH & Co. OHG, München. Wissenschaftsverlag Mannheim Leipzig Wien Zürich

Fortran 90. Lehr- und Handbuch von Dr. Thomas Michel Sietec Consulting GmbH & Co. OHG, München. Wissenschaftsverlag Mannheim Leipzig Wien Zürich Fortran 90 Lehr- und Handbuch von Dr. Thomas Michel Sietec Consulting GmbH & Co. OHG, München Wissenschaftsverlag Mannheim Leipzig Wien Zürich VII Vorwort.V ERSTER TEIL INFORMATIK FÜR PROGRAMMIERER 1 1

Mehr

ATIK ORMAT SINFO HAFTS WIRT. Swetlana Konovalov Seminar Programmiersprachen Westfälische Wilhelms-Universität Münster

ATIK ORMAT SINFO HAFTS WIRT. Swetlana Konovalov Seminar Programmiersprachen Westfälische Wilhelms-Universität Münster Westfälische Wilhelms-Universität Münster WIRTSCHAFTS ATIK ORMAT SINFO TSCH HAFTS WIRT FORTRAN Swetlana Konovalov Seminar Programmiersprachen 04.06.200906 Inhalt Einführung Historische Entwicklung Charakteristika

Mehr

Programmentwicklung. 4. allgemein (modularer Aufbau, Unterprogramme universell einsetzbar)

Programmentwicklung. 4. allgemein (modularer Aufbau, Unterprogramme universell einsetzbar) Programmentwicklung Ziele: 1. effizient (wenig Rechenzeit und Kernspeicher) 2. lesbar (Kommentare, sinnvolle Namen) 3. transportabel (Standard FORTRAN, rechnerunabhängig) 4. allgemein (modularer Aufbau,

Mehr

DO 8 I = 1, 100 ITOTAL

DO 8 I = 1, 100 ITOTAL Teil 4 Programmformate Festes Programmformat FORTRAN (FORmula TRANslator) Fortran I: 1954 Fortran IV: 1966 Fortran 77: 1977 Fortran 90: 1990 Fortran 95: 1995 high performance FORTRAN (HPF): Fortran 90

Mehr

FORTRAN77. eine höllische Programmiersprache. Christian Sternecker. Sommersemester TU-München

FORTRAN77. eine höllische Programmiersprache. Christian Sternecker. Sommersemester TU-München FORTRAN77 eine höllische Programmiersprache Christian Sternecker TU-München Sommersemester 2010 Aufbau des Vortrags Geschichte Merkmale Höllische Konzepte Typsicherheit Programmstruktur Speicherverwaltung

Mehr

Praktikum: Paralleles Programmieren für Geowissenschaftler

Praktikum: Paralleles Programmieren für Geowissenschaftler Praktikum: Paralleles Programmieren für Geowissenschaftler Prof. Thomas Ludwig, Hermann Lenhart, Ulrich Körner, Nathanael Hübbe hermann.lenhart@zmaw.de FORTRAN Einführung I: FORTRAN Historie Sprachelemente

Mehr

Anweisungen in Fortran - Wertzuweisung

Anweisungen in Fortran - Wertzuweisung Anweisungen in Fortran - Wertzuweisung Wertzuweisung, Ausdrücke variable = ausdruck arithmetischer, logischer oder Zeichenketten-Ausdruck, Typ des Ergebnisses sollte auf den Typ der linksstehenden Variablen

Mehr

Syntax der Sprache PASCAL

Syntax der Sprache PASCAL Syntax der Sprache PASCAL Buchstaben A B C D E F G H I J K L M N O P Q R S T U V W X Y Z a b c d e f g h i j k l m n o p q r s t u v w x y z Ziffern 0 1 2 3 4 5 6 7 8 9 Sonderzeichen und Wortsymbole +

Mehr

4.Grundsätzliche Programmentwicklungsmethoden

4.Grundsätzliche Programmentwicklungsmethoden 4.Grundsätzliche Programmentwicklungsmethoden 1.1 Grundlage strukturierter und objektorientierter Programmierung Begriff Software Engineering - umfaßt den gezielten Einsatz von Beschreibungsmitteln, Methoden

Mehr

zu große Programme (Bildschirmseite!) zerlegen in (weitgehend) unabhängige Einheiten: Unterprogramme

zu große Programme (Bildschirmseite!) zerlegen in (weitgehend) unabhängige Einheiten: Unterprogramme Bisher Datentypen: einfach Zahlen, Wahrheitswerte, Zeichenketten zusammengesetzt Arrays (Felder) zur Verwaltung mehrerer zusammengehörender Daten desselben Datentypes eindimensional, mehrdimensional, Array-Grenzen

Mehr

zu große Programme (Bildschirmseite!) zerlegen in (weitgehend) unabhängige Einheiten: Unterprogramme

zu große Programme (Bildschirmseite!) zerlegen in (weitgehend) unabhängige Einheiten: Unterprogramme Bisher Datentypen: einfach Zahlen, Wahrheitswerte, Zeichenketten zusammengesetzt Arrays (Felder) zur Verwaltung mehrerer zusammengehörender Daten desselben Datentypes eindimensional, mehrdimensional, Array-Grenzen

Mehr

Einführung in die Programmierung mit VBA

Einführung in die Programmierung mit VBA Einführung in die Programmierung mit VBA Vorlesung vom 07. November 2016 Birger Krägelin Inhalt Vom Algorithmus zum Programm Programmiersprachen Programmieren mit VBA in Excel Datentypen und Variablen

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java Vorlesung vom 18.4.07, Grundlagen Übersicht 1 Kommentare 2 Bezeichner für Klassen, Methoden, Variablen 3 White Space Zeichen 4 Wortsymbole 5 Interpunktionszeichen 6 Operatoren 7 import Anweisungen 8 Form

Mehr

Angewandte Mathematik und Programmierung

Angewandte Mathematik und Programmierung Angewandte Mathematik und Programmierung Einführung in das Konzept der objektorientierten Anwendungen zu mathematischen Rechnens WS 2013/14 Operatoren Operatoren führen Aktionen mit Operanden aus. Der

Mehr

Übung zur Vorlesung Wissenschaftliches Rechnen Sommersemester 2012 Auffrischung zur Programmierung in C++, 1. Teil

Übung zur Vorlesung Wissenschaftliches Rechnen Sommersemester 2012 Auffrischung zur Programmierung in C++, 1. Teil MÜNSTER Übung zur Vorlesung Wissenschaftliches Rechnen Sommersemester 2012 Auffrischung zur Programmierung in C++ 1. Teil 11. April 2012 Organisatorisches MÜNSTER Übung zur Vorlesung Wissenschaftliches

Mehr

Übung zur Vorlesung Wissenschaftliches Rechnen Sommersemester 2012 Auffrischung zur Programmierung in C++, 1. Teil

Übung zur Vorlesung Wissenschaftliches Rechnen Sommersemester 2012 Auffrischung zur Programmierung in C++, 1. Teil MÜNSTER Übung zur Vorlesung Wissenschaftliches Rechnen Sommersemester 2012 Auffrischung zur Programmierung in C++ 1. Teil 11. April 2012 Organisatorisches MÜNSTER Übung zur Vorlesung Wissenschaftliches

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 22 Einstieg in die Informatik mit Java Grundlagen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 22 1 Kommentare 2 Bezeichner für Klassen, Methoden, Variablen 3 White

Mehr

C.3 Funktionen und Prozeduren

C.3 Funktionen und Prozeduren C3 - Funktionen und Prozeduren Funktionsdeklarationen in Pascal auch in Pascal kann man selbstdefinierte Funktionen einführen: Funktionen und Prozeduren THEN sign:= 0 Funktion zur Bestimmung des Vorzeichens

Mehr

Programmieren I. Kapitel 5. Kontrollfluss

Programmieren I. Kapitel 5. Kontrollfluss Programmieren I Kapitel 5. Kontrollfluss Kapitel 5: Kontrollfluss Ziel: Komplexere Berechnungen im Methodenrumpf Ausdrücke und Anweisungen Fallunterscheidungen (if, switch) Wiederholte Ausführung (for,

Mehr

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf Seite 1 von 29

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf  Seite 1 von 29 Kapitel 2 Einführung in C++ Seite 1 von 29 C++ Zeichensatz - Buchstaben: a bis z und A bis Z. - Ziffern: 0 bis 9 - Sonderzeichen: ; :,. # + - * / % _ \! < > & ^ ~ ( ) { } [ ]? Seite 2 von 29 Höhere Elemente

Mehr

Einführung Datentypen Verzweigung Schleifen. Java Crashkurs. Kim-Manuel Klein May 4, 2015

Einführung Datentypen Verzweigung Schleifen. Java Crashkurs. Kim-Manuel Klein May 4, 2015 Java Crashkurs Kim-Manuel Klein (kmk@informatik.uni-kiel.de) May 4, 2015 Quellen und Editoren Internet Tutorial: z.b. http://www.java-tutorial.org Editoren Normaler Texteditor (Gedit, Scite oder ähnliche)

Mehr

Boolean Wertemenge: Wahrheitswerte {FALSE,TRUE}, auch {0,1} Deklaration:

Boolean Wertemenge: Wahrheitswerte {FALSE,TRUE}, auch {0,1} Deklaration: Boolean Wertemenge: Wahrheitswerte {,}, auch {,} Deklaration: VAR present,billig,laut,gefunden : BOOLEAN; Ein-/Ausgabe: keine! Operatoren: Negation, Verneinung NOT ~ Konjunktion, logisches UND AND & Disjunktion,

Mehr

Wertebereich und Genauigkeit der Zahlendarstellung

Wertebereich und Genauigkeit der Zahlendarstellung Wertebereich und Genauigkeit der Zahlendarstellung Sowohl F als auch C kennen bei ganzen und Floating Point-Zahlen Datentypen verschiedener Genauigkeit. Bei ganzen Zahlen, die stets exakt dargestellt werden

Mehr

Methoden. Gerd Bohlender. Einstieg in die Informatik mit Java, Vorlesung vom

Methoden. Gerd Bohlender. Einstieg in die Informatik mit Java, Vorlesung vom Einstieg in die Informatik mit Java, Vorlesung vom 2.5.07 Übersicht 1 2 definition 3 Parameterübergabe, aufruf 4 Referenztypen bei 5 Überladen von 6 Hauptprogrammparameter 7 Rekursion bilden das Analogon

Mehr

1953/54 (USA) PS FORTRAN (FORmula TRANslating system) 1958/60 (Europa) ALGOL (ALGOrithmic Language)

1953/54 (USA) PS FORTRAN (FORmula TRANslating system) 1958/60 (Europa) ALGOL (ALGOrithmic Language) 4. Zur Struktur der PS PASCAL 4.1. Einleitende Bemerkungen 1953/54 (USA) PS FORTRAN (FORmula TRANslating system) 1958/60 (Europa) ALGOL (ALGOrithmic Language) Anfang 60er (USA) COBOL (Commercial Business

Mehr

Programmieren in Fortran

Programmieren in Fortran Programmieren in Fortran Burkhard Bunk 6.3.2013 1 Fortran Fortran ist die älteste höhere Programmiersprache für numerische Anwendungen: die erste Version entstand 1954 bei IBM. Schon frühzeitig wurde ein

Mehr

Einfache Rechenstrukturen und Kontrollfluss

Einfache Rechenstrukturen und Kontrollfluss Einfache Rechenstrukturen und Kontrollfluss Christian Böhm WS 07/08 in Zusammenarbeit mit Gefei Zhang http://www.dbs.informatik.uni-muenchen.de/lehre/nfinfosw 2 Ziele Verstehen der Grunddatentypen von

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 41 Einstieg in die Informatik mit Java Weitere Anweisungen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 41 1 Überblick 2 Verbundanweisung 3 Bedingte Anweisung 4 Auswahlanweisung

Mehr

1 Bedingte Anweisungen. 2 Vergleiche und logische Operatoren. 3 Fallunterscheidungen. 4 Zeichen und Zeichenketten. 5 Schleifen.

1 Bedingte Anweisungen. 2 Vergleiche und logische Operatoren. 3 Fallunterscheidungen. 4 Zeichen und Zeichenketten. 5 Schleifen. Themen der Übung Kontrollstrukturen, Pseudocode und Modulo-Rechnung CoMa-Übung III TU Berlin 9.10.01 1 Bedingte Anweisungen Vergleiche und logische Operatoren 3 Fallunterscheidungen 4 Zeichen und Zeichenketten

Mehr

4.2 Programmiersprache C

4.2 Programmiersprache C 4.2.1. Elementare Datentypen (signed) int, unsigned int, (signed) short (int), unsigned short (int), (signed) long (int), unsigned long (int) Elementare Datentypen für ganze Zahlen mit oder ohne Vorzeichen.

Mehr

Intensivübung zu Algorithmen und Datenstrukturen

Intensivübung zu Algorithmen und Datenstrukturen Intensivübung zu Algorithmen und Datenstrukturen Silvia Schreier Informatik 2 Programmiersysteme Martensstraße 3 91058 Erlangen Übersicht Programmierung Fallunterscheidung Flussdiagramm Bedingungen Boolesche

Mehr

Ursprünge. Die Syntax von Java. Das Wichtigste in Kürze. Konsequenzen. Weiteres Vorgehen. Rund um Java

Ursprünge. Die Syntax von Java. Das Wichtigste in Kürze. Konsequenzen. Weiteres Vorgehen. Rund um Java Ursprünge Die Syntax von Java Borland Software Corp 1995 Syntax: Pascal Objektorientierte Prorammierung optional Plattformen: Windows (Linux, Mac OS X) Sun Microsystems 1995 Syntax: C/C++ Objektorientiert

Mehr

Programmsteuerung. Mittel zur Programmverzweigung:

Programmsteuerung. Mittel zur Programmverzweigung: Programmsteuerung Mittel zur Programmverzweigung: GOTO Anweisung: Unbedingtes GOTO: GOTO L (L=Labelnummer) Bedingtes GOTO (Finger weg!): GOTO(L1,L2, ) I (L1,L2, =Labelnummer, I: Integervariable, die angibt,

Mehr

Kapitel 4. Programmierkurs. Datentypen. Arten von Datentypen. Wiederholung Kapitel 4. Birgit Engels, Anna Schulze WS 07/08

Kapitel 4. Programmierkurs. Datentypen. Arten von Datentypen. Wiederholung Kapitel 4. Birgit Engels, Anna Schulze WS 07/08 Kapitel 4 Programmierkurs Birgit Engels, Anna Schulze Wiederholung Kapitel 4 ZAIK Universität zu Köln WS 07/08 1 / 23 2 Datentypen Arten von Datentypen Bei der Deklaration einer Variablen(=Behälter für

Mehr

float: Fließkommazahl nach IEEE 754 Standard mit 32 bit

float: Fließkommazahl nach IEEE 754 Standard mit 32 bit Primitive Datentypen Fließkommazahlen float: Fließkommazahl nach IEEE 754 Standard mit 32 bit Vorzeichen Exponent 8 bit Mantisse 23 bit double: Fließkommazahl nach IEEE 754 Standard mit 64 bit Vorzeichen

Mehr

Bauinformatik 1. Teil 1 / VBA. Ernst Baeck. Fachgebiet Statik und Dynamik der Flächentragwerke. 27. April 2017

Bauinformatik 1. Teil 1 / VBA. Ernst Baeck. Fachgebiet Statik und Dynamik der Flächentragwerke. 27. April 2017 Bauinformatik 1 Teil 1 / VBA Ernst Baeck Fachgebiet Statik und Dynamik der Flächentragwerke 27. April 2017 E. Baeck (Uni-DUE) Folien-Skript (V) 1 / 49 Die Programmiersprache VBA Visual Basic for Applications

Mehr

Vorkurs Informatik WiSe 17/18

Vorkurs Informatik WiSe 17/18 Java Ausdrücke und Variablen Dr. Werner Struckmann / Stephan Mielke, Nicole Naczk, 05.10.2017 Technische Universität Braunschweig, IPS Überblick Ausdrücke, Datentypen und Variablen Kontrollstrukturen 05.10.2017

Mehr

Programmieren 1 C Überblick

Programmieren 1 C Überblick Programmieren C Überblick. Einleitung 2. Graphische Darstellung von Algorithmen 3. Syntax und Semantik 4. Einstieg in C: Einfache Sprachkonstrukte und allgemeiner Programmaufbau 5. Skalare Standarddatentypen

Mehr

Lexikalische Struktur von Fortran 95. Normierte Zeichensätze

Lexikalische Struktur von Fortran 95. Normierte Zeichensätze Lexikalische Struktur von Fortran 95. Normierte Zeichensätze Im Folgenden steht für ein Leerzeichen! ASCII (American Standard Code for Information Interchange. Es gibt eine DIN-Norm die dem entspricht),

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 47 Einstieg in die Informatik mit Java Anweisungen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 47 1 Ausdrucksanweisung 2 Einfache Ausgabeanweisung 3 Einfache Eingabeanweisung,

Mehr

Programmieren in. Brian W. Kernighan Dennis M. Ritchie ANSIC. Mit dem C-Reference Manual in deutscher Sprache. Zweite Ausgabe

Programmieren in. Brian W. Kernighan Dennis M. Ritchie ANSIC. Mit dem C-Reference Manual in deutscher Sprache. Zweite Ausgabe Brian W. Kernighan Dennis M. Ritchie Programmieren in Mit dem C-Reference Manual in deutscher Sprache Zweite Ausgabe ANSIC Die deutsche Ausgabe besorgten Prof. Dr. A.T. Schreiner und Dr. Ernst Janich Eine

Mehr

Inhalt. 1 Einstieg in die Welt von C Erste Schritte in C 31. Vorwort... 15

Inhalt. 1 Einstieg in die Welt von C Erste Schritte in C 31. Vorwort... 15 Vorwort... 15 1 Einstieg in die Welt von C 17 1.1 Die Sprache C... 17 1.2 Die C-Standardbibliothek... 18 1.3 Die nötigen Werkzeuge für C... 21 1.4 Übersetzen mit der Entwicklungsumgebung... 23 1.5 Übersetzen

Mehr

Einfache Rechenstrukturen und Kontrollfluß

Einfache Rechenstrukturen und Kontrollfluß 2 Ziele Einfache Rechenstrukturen und Kontrollfluß Verstehen der Grunddatentypen von Java Verstehen von Typkonversion in Java Lernen lokale Variablen und Konstanten zu initialisieren Verstehen der Speicherorganisation

Mehr

Institut für Programmierung und Reaktive Systeme. Java 2. Markus Reschke

Institut für Programmierung und Reaktive Systeme. Java 2. Markus Reschke Java 2 Markus Reschke 07.10.2014 Datentypen Was wird gespeichert? Wie wird es gespeichert? Was kann man mit Werten eines Datentyps machen (Operationen, Methoden)? Welche Werte gehören zum Datentyp? Wie

Mehr

Datentypen. Agenda für heute, 4. März, 2010. Pascal ist eine streng typisierte Programmiersprache

Datentypen. Agenda für heute, 4. März, 2010. Pascal ist eine streng typisierte Programmiersprache Agenda für heute, 4. März, 2010 Zusammengesetzte if-then-else-anweisungen Datentypen Pascal ist eine streng typisierte Programmiersprache Für jeden Speicherplatz muss ein Datentyp t (Datenformat) t) definiert

Mehr

Praktikum: Paralleles Programmieren für Geowissenschaftler

Praktikum: Paralleles Programmieren für Geowissenschaftler Praktikum: Paralleles Programmieren für Geowissenschaftler Prof. Thomas Ludwig, Hermann Lenhart, Ulrich Körner, Nathanael Hübbe hermann.lenhart@zmaw.de FORTRAN Einführung II: Programmstrukturen Subroutinen

Mehr

RO-Tutorien 3 / 6 / 12

RO-Tutorien 3 / 6 / 12 RO-Tutorien 3 / 6 / 12 Tutorien zur Vorlesung Rechnerorganisation Christian A. Mandery WOCHE 2 AM 06./07.05.2013 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft

Mehr

Grundlagen wissenschaftlichen Arbeitens (ws /05)

Grundlagen wissenschaftlichen Arbeitens (ws /05) Grundlagen wissenschaftlichen Arbeitens (ws.. 2004/05) Thema: The programming language PASCAL Autor: Ratko Trajanovski 1 kurzfassung Zur Sprache PASCAL Pascal in der Ausbildung Lexikalische Elemente Programmaufbau

Mehr

1 EINFÜHRUNG PROGRAMMAUFBAU IN C++

1 EINFÜHRUNG PROGRAMMAUFBAU IN C++ 1 EINFÜHRUNG PROGRAMMAUFBAU IN C++ Leitidee: Genaueres Verständnis der C++-Syntax an Hand von Syntaxdiagrammen Lexikalische Struktur von C++ Vereinbarungen: Definition / Deklaration Beispiele für Variablen-

Mehr

JAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch)

JAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch) JAVA BASICS 2. Primitive Datentypen 1. Warum Java? zunehmend weit verbreitet einfach und (relativ) sicher keine Adressrechnung, aber Pointer keine gotos kein Präprozessor keine globalen Variablen garbage

Mehr

3.1 Reservierte Wörter

3.1 Reservierte Wörter 3.1 Reservierte Wörter int Bezeichner für Basis-Typen; if, else, while Schlüsselwörter aus Programm-Konstrukten; (,), ",, {,},,,; Sonderzeichen. 62 3.2 Was ist ein erlaubter Name? Schritt 1: Angabe der

Mehr

PIC16 Programmierung in HITECH-C

PIC16 Programmierung in HITECH-C PIC16 Programmierung in HITECH-C Operatoren: Arithmetische Operatoren - binäre Operatoren + Addition - Subtraktion * Multiplikation / Division % Modulo + - * / sind auf ganzzahlige und reelle Operanden

Mehr

JavaScript. Dies ist normales HTML. Hallo Welt! Dies ist JavaScript. Wieder normales HTML.

JavaScript. Dies ist normales HTML. Hallo Welt! Dies ist JavaScript. Wieder normales HTML. JavaScript JavaScript wird direkt in HTML-Dokumente eingebunden. Gib folgende Zeilen mit einem Texteditor (Notepad) ein: (Falls der Editor nicht gefunden wird, öffne im Browser eine Datei mit der Endung

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 26 Einstieg in die Informatik mit Java Methoden Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 26 1 Methoden 2 Methodendefinition 3 Parameterübergabe, Methodenaufruf

Mehr

Peter Prinz Ulla Kirch-Prinz C+ + Lernen und professionell anwenden. ffl mitp

Peter Prinz Ulla Kirch-Prinz C+ + Lernen und professionell anwenden. ffl mitp Peter Prinz Ulla Kirch-Prinz C+ + Lernen und professionell anwenden ffl mitp Inhaltsverzeichnis Einleitung 19 1 Grundlagen 21 Entwicklung und Eigenschaften von C + + 22 Objektorientierte Programmierung

Mehr

Kapitel 4. Programmierkurs. Datentypen. Arten von Datentypen. Datentypen und Operatoren Ganzzahlige Numerische Datentypen Logischer Datentyp

Kapitel 4. Programmierkurs. Datentypen. Arten von Datentypen. Datentypen und Operatoren Ganzzahlige Numerische Datentypen Logischer Datentyp Kapitel 4 Programmierkurs Birgit Engels, Anna Schulze Datentypen und Operatoren Ganzzahlige Numerische Datentypen Logischer Datentyp ZAIK Universität zu Köln WS 07/08 1 / 6 Datentypen Arten von Datentypen

Mehr

Programm heute. Algorithmen und Datenstrukturen (für ET/IT) Definition Algorithmus. Wie beschreibt man Algorithmen?

Programm heute. Algorithmen und Datenstrukturen (für ET/IT) Definition Algorithmus. Wie beschreibt man Algorithmen? Programm heute Algorithmen und Datenstrukturen (für ET/IT) Sommersemester 2015 1 Einführung Dr. Tobias Lasser Computer Aided Medical Procedures Technische Universität München 2 Grundlagen von Algorithmen

Mehr

Anwendungsentwicklung 2. Teil

Anwendungsentwicklung 2. Teil Andreas Born Anwendungsentwicklung 2. Teil Programmieren mit Objekten unter MS Excel und VBA A. Born, Algorithmen 1 v w : t u 5 * I Anwendungsentwicklung Idee Was schrittweise verfeinern Spezifikation

Mehr

Funktionen in Matlab. Nutzerdefinierte Funktionen können in.m-datei gespeichert werden

Funktionen in Matlab. Nutzerdefinierte Funktionen können in.m-datei gespeichert werden Funktionen in Matlab Zusammenfassung von Befehlssequenzen als aufrufbare/wiederverwendbare Funktionen in einem Programmblock mit festgelegter Schnittstelle (Signatur) Derartige prozedurale Programmierung

Mehr

Inhaltsverzeichnis. Inhalt. Bemerkung... 9 Vorwort Programme und Programmiersprachen

Inhaltsverzeichnis. Inhalt. Bemerkung... 9 Vorwort Programme und Programmiersprachen Inhalt 3 Bemerkung... 9 Vorwort... 10 1 Programme und Programmiersprachen 1.1 Assembler... 13 1.2 Höhere Programmiersprachen... 15 1.2.1 Interpreter... 16 1.2.2 Compiler... 17 1.2.3 Zwischencode... 18

Mehr

TURBO PASCAL VERSION 5.5

TURBO PASCAL VERSION 5.5 Jörg Lange TURBO PASCAL VERSION 5.5 / Hüthig Buch Verlag Heidelberg 7 Inhaltsverzeichnis 1. DasTURBO-Pascal-System 13 1.1 Starten des TURBO-Pascal-Systems 13 1.2 DasTURBO-Pascal-Menue-System 17 1.3 DasF)ILE-Menue

Mehr

Java Anweisungen und Ablaufsteuerung

Java Anweisungen und Ablaufsteuerung Informatik 1 für Nebenfachstudierende Grundmodul Java Anweisungen und Ablaufsteuerung Kai-Steffen Hielscher Folienversion: 24. Januar 2017 Informatik 7 Rechnernetze und Kommunikationssysteme Inhaltsübersicht

Mehr

Algorithmen und Datenstrukturen (für ET/IT)

Algorithmen und Datenstrukturen (für ET/IT) Algorithmen und Datenstrukturen (für ET/IT) Sommersemester 2016 Dr. Tobias Lasser Computer Aided Medical Procedures Technische Universität München Programm heute 1 Einführung 2 Grundlagen von Algorithmen

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java Vorlesung vom 25.4.07, Anweisungen Übersicht 1 Ausdrucksanweisung 2 Einfache Ausgabeanweisung 3 Einfache Eingabeanweisung, Vorbereitungen 4 Verbundanweisung 5 Bedingte Anweisung 6 Auswahlanweisung 7 for

Mehr

6. Kontrollanweisungen II

6. Kontrollanweisungen II Sichtbarkeit 6. Kontrollanweisungen II Sichtbarkeit, Lokale Variablen, While-Anweisung, Do-Anweisung, Sprunganweisungen main block Deklaration in einem Block ist ausserhalb des Blocks nicht sichtbar. int

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 34 Einstieg in die Informatik mit Java weitere Anweisungen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 34 1 Verbundanweisung 2 Bedingte Anweisung 3 Auswahlanweisung

Mehr

5. Kontrollanweisungen II

5. Kontrollanweisungen II Sichtbarkeit 5. Kontrollanweisungen II Sichtbarkeit, Lokale Variablen, While-Anweisung, Do-Anweisung, Sprunganweisungen main block Deklaration in einem Block ist ausserhalb des Blocks nicht sichtbar. int

Mehr

Wiederholung, Abbruch von Schleifen, switch-anweisung Datentypen, char, formatierte Ausgabe

Wiederholung, Abbruch von Schleifen, switch-anweisung Datentypen, char, formatierte Ausgabe Informatik Vorlesung 03b Wiederholung, Abbruch von Schleifen, switch-anweisung Datentypen, char, formatierte Ausgabe 12. November 2018 WiSe 2018 FB Ing - SB Umwelttechnik und Dienstleistung - Informatik

Mehr

Die Syntax von Java. Ursprünge. Konsequenzen. Das Wichtigste in Kürze. Weiteres Vorgehen. Rund um Java. Sun Microsystems. Borland Software Corp

Die Syntax von Java. Ursprünge. Konsequenzen. Das Wichtigste in Kürze. Weiteres Vorgehen. Rund um Java. Sun Microsystems. Borland Software Corp Ursprünge Die Syntax von Java Borland Software Corp 1995 Syntax: Pascal Objektorientierte Prorammierung optional Plattformen: Windows (Linux, Mac OS X) Sun Microsystems 1995 Syntax: C/C++ Objektorientiert

Mehr

Algorithmen zur Datenanalyse in C++

Algorithmen zur Datenanalyse in C++ Algorithmen zur Datenanalyse in C++ Hartmut Stadie 16.04.2012 Algorithmen zur Datenanalyse in C++ Hartmut Stadie 1/ 39 Einführung Datentypen Operatoren Anweisungssyntax Algorithmen zur Datenanalyse in

Mehr

Modul 122 VBA Scribt.docx

Modul 122 VBA Scribt.docx Modul 122 VBA-Scribt 1/5 1 Entwicklungsumgebung - ALT + F11 VBA-Entwicklungsumgebung öffnen 2 Prozeduren (Sub-Prozeduren) Eine Prozedur besteht aus folgenden Bestandteilen: [Private Public] Sub subname([byval

Mehr

Java. Von den Grundlagen bis zu Threads und Netzen von Prof. Dr. Ernst-Wolfgang Dieterich Fachhochschule Ulm

Java. Von den Grundlagen bis zu Threads und Netzen von Prof. Dr. Ernst-Wolfgang Dieterich Fachhochschule Ulm Java Von den Grundlagen bis zu Threads und Netzen von Prof. Dr. Ernst-Wolfgang Dieterich Fachhochschule Ulm R.Oldenbourg Verlag München Wien 1999 1. Einleitung 11 2. Java-Entwicklungsumgebung 15 2.1 JDK

Mehr

Felder (1) Felder (Arrays) speichern viele Datenelemente des gleichen Typs. Auf einzelne Elemente kann über einen Index zugegriffen werden

Felder (1) Felder (Arrays) speichern viele Datenelemente des gleichen Typs. Auf einzelne Elemente kann über einen Index zugegriffen werden Felder (1) Felder (Arrays) speichern viele Datenelemente des gleichen Typs. Auf einzelne Elemente kann über einen Index zugegriffen werden Dim arrayname (dim1,dim2, ) As Typ Bei eindimensionalen Feldern

Mehr

Vorkurs Informatik WiSe 16/17

Vorkurs Informatik WiSe 16/17 Java Ausdrücke und Variablen Dr. Werner Struckmann / Stephan Mielke, Jakob Garbe, 05.10.2016 Technische Universität Braunschweig, IPS Überblick Ausdrücke, Datentypen und Variablen Kontrollstrukturen 05.10.2016

Mehr

C++ Teil 2. Sven Groß. 16. Apr IGPM, RWTH Aachen. Sven Groß (IGPM, RWTH Aachen) C++ Teil Apr / 22

C++ Teil 2. Sven Groß. 16. Apr IGPM, RWTH Aachen. Sven Groß (IGPM, RWTH Aachen) C++ Teil Apr / 22 C++ Teil 2 Sven Groß IGPM, RWTH Aachen 16. Apr 2015 Sven Groß (IGPM, RWTH Aachen) C++ Teil 2 16. Apr 2015 1 / 22 Themen der letzten Vorlesung Hallo Welt Elementare Datentypen Ein-/Ausgabe Operatoren Sven

Mehr

JAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch)

JAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch) JAVA BASICS 2. Primitive Datentypen 1. Warum Java? zunehmend weit verbreitet einfach und (relativ) sicher keine Adressrechnung, aber Pointer keine gotos kein Präprozessor keine globalen Variablen garbage

Mehr

8. HPF High Performance FORTRAN

8. HPF High Performance FORTRAN 8. HPF High Performance FORTRAN datenparallele Erweiterung von FORTRAN 90 SPMD-Ansatz daten-parallele Array-Operationen verteilte Datenstrukturen Schleifenparallelität FORTRAN 77 -> FORTRAN 90 -> HPF FORTRAN

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java Vorlesung vom 6.11.07, Weitere Anweisungen Übersicht 1 Verbundanweisung 2 Bedingte Anweisung 3 Auswahlanweisung 4 for Schleife 5 while Schleife 6 do Schleife 7 break Anweisung 8 continue Anweisung 9 Leere

Mehr

Gedächtnis. Während der Abarbeitung eines Algorithmus müssen sich Dinge gemerkt werden bzw. auf Dingen wird gerechnet. Zugriff.

Gedächtnis. Während der Abarbeitung eines Algorithmus müssen sich Dinge gemerkt werden bzw. auf Dingen wird gerechnet. Zugriff. Gedächtnis Während der Abarbeitung eines Algorithmus müssen sich Dinge gemerkt werden bzw. auf Dingen wird gerechnet Hauptspeicher 38265 Telefon CPU Gedächtnis Vorlesender Zugriff Verarbeitungseinheit

Mehr

3 Syntax von Programmiersprachen

3 Syntax von Programmiersprachen 3 Syntax von Programmiersprachen Syntax ( Lehre vom Satzbau ) formale Beschreibung des Aufbaus der Worte und Sätze, die zu einer Sprache gehören; im Falle einer Programmiersprache Festlegung, wie Programme

Mehr

Inhaltsverzeichnis. Vorwort.11

Inhaltsverzeichnis. Vorwort.11 Inhaltsverzeichnis Vorwort.11 Kapitel 1 Einführung in die C-Programmierung 17 1.1 Ein erstes C-Programm 17 1.1.1 Analyse des Zinseszins-Programms 17 1.2 Compilieren und Ausführen eines Programms 24 1.3

Mehr

Primitive Datentypen und Felder (Arrays)

Primitive Datentypen und Felder (Arrays) Primitive Datentypen und Felder (rrays) Primitive Datentypen Java stellt (genau wie Haskell) primitive Datentypen für Boolesche Werte, Zeichen, ganze Zahlen und Gleitkommazahlen zur Verfügung. Der wichtigste

Mehr

Operatoren (1) Operatoren (2)

Operatoren (1) Operatoren (2) Operatoren (1) Binäre Operatoren + - * / % < = > & ^ > && Addition Subtraktion Multiplikation Division Divisionsrest Vergl. auf kleiner Vergl. auf kleiner oder gleich Vergl. auf gleich Vergl.

Mehr

3. Grundanweisungen in Java

3. Grundanweisungen in Java 3. Grundanweisungen in Java Die Grundanweisungen entsprechen den Prinzipien der strukturierten Programmierung 1. Zuweisung 2. Verzweigungen 3. Wiederholungen 4. Anweisungsfolge (Sequenz) Die Anweisungen

Mehr

RO-Tutorien 15 und 16

RO-Tutorien 15 und 16 Tutorien zur Vorlesung Rechnerorganisation Tutorienwoche 2 am 04.05.2011 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der Helmholtz-Gemeinschaft

Mehr

Mathematische Computer-Software

Mathematische Computer-Software Mathematische Computer-Software Kommerzielle Computeralgebrasysteme (CAS) Beispiele: Mathematica, Maple, Numerisches und symbolisches Verarbeiten von Gleichungen: Grundrechenarten Ableitung und Integration

Mehr

C für Java-Programmierer

C für Java-Programmierer Carsten Vogt C für Java-Programmierer ISBN-10: 3-446-40797-9 ISBN-13: 978-3-446-40797-8 Inhaltsverzeichnis Weitere Informationen oder Bestellungen unter http://www.hanser.de/978-3-446-40797-8 sowie im

Mehr

Übersicht Formale Semantik. Übersicht Axiomatische Semantik. Inhaltsübersicht HPS WS 2003/04. Vorlesung Höhere Programmiersprachen,

Übersicht Formale Semantik. Übersicht Axiomatische Semantik. Inhaltsübersicht HPS WS 2003/04. Vorlesung Höhere Programmiersprachen, Vorlesung Höhere Programmiersprachen, WS 2003/04 Teil 2: Formale Semantik Axiomatische Semantik Inhaltsübersicht - Grundlagen (1,2) - Konzepte imperativer Programmiersprachen (2,3) - Deklarative Programmiersprachen

Mehr

Java I Vorlesung Imperatives Programmieren

Java I Vorlesung Imperatives Programmieren Java I Vorlesung 2 Imperatives Programmieren 3.5.2004 Variablen -- Datentypen -- Werte Operatoren und Ausdrücke Kontrollstrukturen: if Imperatives Programmieren Im Kern ist Java eine imperative Programmiersprache.

Mehr