1 Programmiersprachen

Größe: px
Ab Seite anzeigen:

Download "1 Programmiersprachen"

Transkript

1 1 Programmiersprachen Um einen Algorithmus in einer von einer Maschine ausführbaren Form beschreiben zu können, verwenden wir eine formale Sprache. formale Beschreibung des Aufbaus der Worte und Sätze, die zur Sprache gehören Anfällig gegenüber Mehrdeutigkeit, Veränderungen und Spontanität Eine Beschreibung eines Algorithmus in einer formalen (formal beschriebenen) Sprache heisst ein Programm, die formale Sprache eine Programmiersprache 1

2 Programmiersprache vs. natürliche Sprache Eine natürliche Sprache ist ein komplexes System aus Lauten und Zeichen Historisch gewachsen Ständig im Wandel Robust, Mehrdeutig, Ungenau Verwendung willkürlicher gesprochener Symbole mit festgelegter Bedeutung (Wörterbücher, Rechtschreibregeln, Trennungsregeln, Grammatikregeln, Ausnahme-Listen, Sprach- Gefühl ) 2

3 Eine Programmiersprache soll: Datenstrukturen anbieten zum Speichern und effizienten Bearbeitung von Daten Operationen auf Daten erlauben Kontrollstrukturen zur Ablaufsteuerung bereitstellen. 3

4 In dieser Vorlesung diskutieren wir Imperative Programmiersprachen, die eng mit dem von Neumann schen Maschinenmodell verknüpft sind. Ein imperatives Programm beschreibt eine Berechnung durch eine Folge von Anweisungen, die den Programmstatus (Speicherzellen, Programmzähler) verändern. Der Programmzähler der CPU arbeitet Anweisung nach Anweisung sequentiell ab (der Programmierer hat seine Anweisungen explizit aufzureihen und Wiederholungen/Sprünge zu kodieren) Der Speicher der Maschine dient zur Zustandsprotokollierung (der Zustand eines Algorithmus wird durch Variablenzuweisung bzw. -auslesen explizit kontrolliert) Diese Vorgehensweise ist unterschiedlich zur Programmierung in einer ( funktionalen Programmiersprache) 4

5 1.1 Java - eine Programmiersprache 5

6 Ein erstes Java-Programm: public class Hello { public static void main ( String[] args ) { int zahl, quadrat; zahl = 4; quadrat = zahl * zahl; // offensichtlich eine Operation String text = "Das Quadrat von "; } } System.out.println(text + zahl + " ist " + quadrat); 6

7 Erläuterungen: Jedes Programm hat einen Namen (hier: Hello). Der Name steht hinter dem Schlüsselwort class (was eine Klasse, was public ist, lernen wir später. Der Name der Datei, die den Programmtext speichert, muss zum Namen des Programms passen, d.h. in diesem Fall Hello.java heißen. Das Programm ist der Rumpf des Hauptprogramms, d.h. der Funktion main(). Die Programm-Ausführung eines Java-Programms startet stets mit einem Aufruf von dieser Funktion main(). 7

8 Jedes Programm sollte Kommentare enthalten, damit man sich selbst später noch darin zurecht findet! Ein Kommentar in Java hat etwa die Form: // Das ist ein Kommentar!!! Wenn er sich über mehrere Zeilen erstrecken soll, kann er auch so aussehen: /* Dieser Kommentar geht über mehrere Zeilen! */ 8

9 Der Edit-Compile-Run -Zyklus: Erstellen (Editieren) des Programms mit einem Text-Editor z.b. Editor, Emacs, Word, etc. Speichern des Programms als Textdatei Übersetzen (Kompilieren) des Programms in eine maschinennnahe Sprache Ausführen des übersetzten Programms 9

10 Java Programm Übersetzung: Stufe 1: Übersetzen des Quelltextes duch den Java-Compiler javac in Bytecode c net.de/tutorials/java/notes/chap05/ch05_3.html 10

11 Java Programm Übersetzung: Stufe 2: Der Java-Interpreter java führt den Code aus Interpreter und CPU bilden eine Java Virtual Machine (JVM) c net.de/tutorials/java/notes/chap05/ch05_4.html 11

12 1.2 Variablen Um Daten zu speichern und auf gespeicherte Daten zugreifen zu können, stellt Java Variablen zur Verfügung. Variablen beziehen sich auf Speicherstellen im Hauptspeicher, die Daten eines ganz bestimmten Typs speichern können. Variablen müssen erst einmal eingeführt, d.h. deklariert werden. 12

13 Beispiel: int zahl, quadrat; String text = "Das Quadrat von "; Diese Deklaration führt die drei Variablen mit den Namen zahl, quadrat und text ein. 13

14 Erklärung: Das Schlüsselwort int besagt, dass diese Variablen ganze Zahlen ( Integers ) der Typ der Variablen speichern sollen. Das Schlüsselwort String besagt, dass diese Variable Zeichenketten speichern soll. Variablen können dann benutzt werden, um anzugeben, auf welche Daten Operationen angewendet werden sollen. Variablen in einer Aufzählung sind durch Kommas, getrennt. Am Ende steht ein Semikolon ;. 14

15 Java-Datentypen In Java können unterschiedliche Arten von Datentypen verwendet werden: Primitive Datentypen Ganzzahlige numerische Datentypen: short, int, long,... Logischer Datentyp: boolean Rationale numerische Datentypen: float, double,... Alphanumerischer Datentyp: char Vordefinierte Datentypen (z.b. : String, BufferedReader, InputStreamReader) Selbstdefinierte Datentypen 15

16 Java-Basistypen Der Typ int gehört zu den Basistypen (primitive Datentypen), die von Java bereitgestellt werden. Zu jedem Basistyp gibt es eine Menge möglicher Werte. Jeder Wert eines Basistyps benötigt die gleiche Menge Platz, um ihn im Rechner zu repräsentieren. Der Platz wird in Bit gemessen. (Wie viele Werte kann man mit n Bit darstellen?) 16

17 Es gibt vier primitive Datentypen für ganze Zahlen: Typ Platz kleinster Wert größter Wert byte short int long Die Benutzung kleinerer Typen wie byte oder short spart Platz. 17

18 Es gibt zwei primitive Datentypen für Gleitkommazahlen: Typ Platz kleinster Wert größter Wert float 32 ca. -3.4e+38 ca. 3.4e+38 7 signifikante Stellen double 64 ca. -1.7e+308 ca. 1.7e signifikante Stellen Für die Auswahl des geeigneten Typs sollte die gewünschte Genauigkeit des Ergebnisses berücksichtigt werden. Eine Konstante gilt als Gleitkommazahl, wenn sie einen Dezimalpunkt oder einen Exponenten (durch E oder e eingeleitet) enthält (z.b.: 2.34, 1.7e+308, 3.2E-2). Durch Anhängen von f oder F bzw. d oder D werden Gleitkomma-Konstanten als float- bzw. double-werte kenntlich gemacht (z.b.: 2.34f, 1.7e8D). Ohne Zusatz werden Konstanten als double interpretiert. 18

19 ... weitere Basistypen: Typ Platz Werte boolean 1 true, false char 16 alle Unicode-Zeichen Unicode ist ein Zeichensatz, der alle irgendwo auf der Welt gängigen Alphabete umfasst, also zum Beispiel: die Zeichen unserer Tastatur (inklusive Umlaute); die chinesischen Schriftzeichen; die ägyptischen Hieroglyphen... char-konstanten schreibt man mit Hochkommas: 'A', ';', '\n'. 19

20 Weitere Java-Datentypen Der Datentyp String für Wörter ist kein Basistyp, sondern eine Klasse (dazu kommen wir später...) Hier behandeln wir nur zwei Eigenschaften: Man kann Wörter in Variablen vom Typ String abspeichern. String-Konstanten haben die Form "Hello World!"; Man kann Wörter mithilfe des Operators + konkatenieren. 20

21 Beispiel: String s0 = ""; String s1 = "Hel"; String s2 = "lo Wo"; String s3 = "rld!"; System.out.println(s0 + s1 + s2 + s3);... schreibt Hello World! auf die Ausgabe 21

22 1.3 Operationen Die Operationen sollen es gestatten, die Werte von Variablen zu modifizieren. Operationen auf ganzen Zahlen: Negation - Addition, Subtraktion, Multiplikation +, -, * Ganzzahlige Division /, Modulo (Divisionsrest) % Gleichheit, Ungleichheit ==,!= Größer, größer gleich, kleiner, kleiner gleich >, >=, <, <= Bitoperationen (später) 22

23 Operationen auf Gleitkommazahlen: Negation - Addition, Subtraktion, Multiplikation +, -, * Division /, Modulo (Divisionsrest) % Gleichheit, Ungleichheit ==,!= Größer, größer gleich, kleiner, kleiner gleich >, >=, <, <= 23

24 Operationen auf Variablen vom Typ boolean: Kann bei Zuweisungen von logischen Ausdrücken verwendet werden und wird implizit bei Kontrollstrukturen verwendet. Logische Operatoren: logische Negation:! logisches UND: && (a && b) ist nur dann wahr, wenn a und b beide wahr sind. logisches ODER: (a b) ist nur dann falsch, wenn a und b beide falsch sind. Beachte: Das Ergebniss einer Vergleichsoperation auf Ganz- oder Gleitkommazahlen liefert einen booleschen Wert. 24

25 Eine wichtige Operation ist die Zuweisung. Die Zuweisung weist der Variablen auf der linken Seite den Wert des Ausdrucks auf der rechten Seite zu. Ein Ausdruck ist eine Kombination von Literalen Zeichen, die einen Wert darstellen, z.b.: 3.456, Operatoren Symbole, wie + oder *, die Operationen auf Operanden darstellen, Variablen Klammern ( und ), die verwendet wird, um einen Wert zu berechnen. 25

26 Beispiele: x = 7; Die Variable x erhält den Wert 7. result = x; Der Wert der Variablen x wird ermittelt und der Variablen result zugewiesen. result = x + 19; Der Wert der Variablen x wird ermittelt, 19 dazu gezählt und dann das Ergebnis der Variablen result zugewiesen. 26

27 result = x - 5; Der Wert der Variablen x wird ermittelt, 5 abgezogen und dann das Ergebnis der Variablen result zugewiesen. result = (x - 5) * (x + 3) + -x; Beachte die richtige Klammerung und die Unterscheidung zwischen unären und binären Operatoren. 27

28 Inkrementieren und Dekrementieren Die unären Operatoren ++ und - inkrementieren bzw. dekrementieren eine Ganz- oder Gleikommazahl um und - können vor (prefix) oder nach (postfix) dem Operanden stehen. Wird die Prefix-Version in einem Ausdruck verwendet, so wird der bereits inkrementierte/dekrementierte Wert verwendet. Wird die Postfix-Version in einem Ausdruck verwendet, so wird der initiale Wert verwendet. Die Operation wird erst nach der Ausdrucksauswertung durchgeführt. 28

29 Beispiel class PrePostDemo { public static void main(string[] args){ } } int i = 3; i++; System.out.println(i); // "4" ++i; System.out.println(i); // "5" System.out.println(++i); // "6" System.out.println(i++); // "6" System.out.println(i); // "7" 29

30 Präzedenz (Auswertereihenfolge) der Operatoren Unäre Operatoren ++, -, +, - binäre arithmetische Operatoren *, /, +, - Vergleichsoperatoren <, <=, >, >=, ==!= Logische Operatoren &&, Zuweisungs-Operator = 30

31 Achtung: Java warnt nicht vor Überlauf/Unterlauf!! Beispiel: int x; x = ; // grösstes int x = x+1;... setzt x auf

32 Achtung: Java bezeichnet die Zuweisung mit = anstelle von := (Erbschaft von C...) Jede Zuweisung wird mit einem Semikolon ; beendet. In der Zuweisung x = x + 1; greift das x auf der rechten Seite auf den Wert vor der Zuweisung zu. Zuweisung können auch direkt bei der Variablendeklaration durchgeführt werden, z.b.: String name = Hello World!; Konstanten ändern ihren Wert während der Laufzeit des Programms nicht, z.b.: final float PI = ; 32

33 1.4 Typen und Casts Werden die Operatoren +, -, *, /, % auf ein Paar von Argumenten verschiedenen Typs angewendet, wird automatisch vorher der speziellere in den allgemeineren umgewandelt (implizite Typumwandlung oder implicit Type Cast) a a 33

34 float double Gleitkomma-Zahlen long short int ganze Zahlen byte char 34

35 Implizite Typumwandlung: Eine Variable wird einer anderen von anderem, erlaubten Typ zugewiesen oder eine Operation eines solchen Typs auf sie angwandt. Beispiel: short s = 123; int i; int j = 1024; i = s; i = j + s; 35

36 Beispiel: short xs = 1; int x = ; (x + xs) liefert den int-wert float xs = 1.0f; int x = ; (x + xs) liefert den float-wert 1.0E9 36

37 Achtung: Das Ergebnis einer Operation auf float kann aus dem Bereich von float herausführen. Dann ergibt sich der Wert Infinity oder -Infinity. Das gleiche gilt für double. Das Ergebnis einer Operation auf Basistypen, die in int enthalten sind (außer char), liefern ein int. Wird das Ergebnis einer Variablen zugewiesen, sollte deren Typ dies zulassen Mithilfe von expliziten Type Casts lässt sich das (evt. unter Verlust von Information) stets bewerkstelligen. Java lässt keine Konvertierung von boolean zu anderen Datentypen zu. 37

38 Beispiel: int i, j; double d;... i = j + d; i = (int) (j+d); // Fehler: i ist int, aber j + d ist double /* Korrekt: aber Verluste bei der Konversion werden in Kauf genommen */ 38

39 Beispiel: byte x = 1;... x++; // Korrekt: x ist nun 2 x = x + 1; 39

40 Beispiel: byte x = 1;... x++; // Korrekt: x ist nun 2 x = x + 1; // Fehler: Auswertung von x+1 liefert int-wert 40

41 Beispiele: (float) 1.7e+308 liefert Infinity (long) 1.7e+308 liefert (d.h. den größten long-wert) (int) 1.7e+308 liefert (d.h. den größten int-wert) (short) 1.7e+308 liefert -1 (int) 1.0e9 liefert (int) 1.11 liefert 1 (int) liefert -2 41

42 Beachte: Jeder Wert in Java hat eine Darstellung als String. Wird der Operator + auf einen Wert vom Typ String und einen anderen Wert x angewendet, wird x automatisch in seine String-Darstellung konvertiert... ==... liefert einfache Methode, um float oder double auszugeben!!! Beispiel: double x = -0.55e13; System.out.println("Eine Gleitkommazahl: " + x);... schreibt Eine Gleitkommazahl: -0.55E13 auf die Ausgabe 42

43 1.5 Java-IO (Input/Output) Sehr häufig benötigen wir Operationen, um Daten (Zahlen) einlesen bzw. ausgeben zu können. System.out.println(Meine Ausgabe); Diese Operation schreibt den Text Meine Ausgabe auf die Ausgabe. System.out.println(42); Diese Operation schreibt 42 auf die Ausgabe. System.out.println(result); Diese Operation bestimmt den Wert der Variablen result und schreibt dann diesen auf die Ausgabe. 43

44 Das Einlesen von Daten ist komplizierter! 44

45 import java.io.*; class ReadMe { public static void main (String[] args) throws IOException { // Catch me if you can BufferedReader stdin = new BufferedReader (new InputStreamReader(System.in)); String indata; indata = stdin.readline(); } } // indata in int konvertieren int zahl = Integer.parseInt(inData); 45

46 Online-Tutorial Java IO 46

47 Bemerkung Zur Vereinfachung werden wir im Folgenden oft zum Lesen von Daten die Funktion read() und zum Schreiben des Wertes einer Variablen die Funktion write(varname) oder write(literal)verwenden. Beide Funktionen sind nicht Bestandteil von Java und werden nur zur Vereinfachung eingeführt! 47

48 1.6 Kontrollstrukturen Sequenz: int x, y, result; x = read(); y = read(); result = x + y; write(result); 48

49 Zu jedem Zeitpunkt wird nur eine Anweisung (Statement) ausgeführt. Jede Anweisung wird genau einmal ausgeführt. Keine wird wiederholt, keine ausgelassen. Die Reihenfolge, in der die Anweisungen ausgeführt werden, ist die gleiche, in der sie im Programm stehen (d.h. nacheinander). Mit Beendigung der letzten Anweisung endet die Programm-Ausführung. == Sequenz alleine erlaubt nur sehr einfache Programme. 49

50 Selektion (bedingte Auswahl): Allgemein: if ( cond ) stmt else stmt 50

51 Selektion (bedingte Auswahl): int x, y, result; x = read(); y = read(); if (x > y) else result = x - y; result = y - x; System.out.println(result); Zuerst wird die Bedingung ausgewertet. Ist sie erfüllt, wird die nächste Anweisung ausgeführt. Ist sie nicht erfüllt, wird die Anweisung nach dem else ausgeführt. 51

52 Beachte: Anweisungen können selbst wieder aus Selektionen bestehen: int x; x = read(); if (x == 0) write(0); else if (x < 0) write(-1); else write(+1); 52

53 ... oder aus (geklammerten) Folgen von Anweisungen: int x, y; x = read(); if (x!= 0) { y = read(); if (x > y) write(x); else write(y); } else write(0); 53

54 Beachte: ein else bezieht sich immer auf das zuletzt öffnende if im selben Block if (x > 0) if (x < 10) write("aaa"); else write("bbb"); 54

55 Beachte: durch Klammerung wird ein seprater Block definiert if (x > 0) { if (x < 10) write("aaa"); } else write("bbb"); 55

56 Iteration (wiederholte Ausführung): Auch mit Sequenz und Selektion kann noch nicht viel berechnet werden... oder wie sollten sich wiederholende Aktionen mit sich ändernden Werten durchgeführt werden? Allgemein: while ( cond ) stmt 56

57 Iteration (wiederholte Ausführung): int x, y; x = read(); y = read(); while (x!= y) if (x < y) y = y - x; else x = x - y; write(x); 57

58 Zuerst wird die Bedingung ausgewertet. Ist sie erfüllt, wird der Rumpf des while-statements ausgeführt. der Rumpf besteht aus einer Anweisung oder aus einer geklammerten Sequenz von Anweisungen Nach Ausführung des Rumpfs wird das gesamte while-statement erneut ausgeführt. Ist die Bedingung nicht erfüllt, fährt die Programm-Ausführung hinter dem while-statement fort. 58

59 Jede (partielle) Funktion auf ganzen Zahlen, die überhaupt berechenbar ist, läßt sich mit Selektion, Sequenz, Iteration, berechnen Beweis: Berechenbarkeitstheorie. Idee: Eine Turing-Maschine kann alles berechnen... Versuche, eine Turing-Maschine zu simulieren! 59

60 Und nun der Euklidische Algorithmus in Java import java.io.*; public class GGT { public static void main (String[] args) throws IOException { BufferedReader stdin = new BufferedReader (new InputStreamReader(System.in)); } } int x, y; String indata = stdin.readline(); x = Integer.parseInt(inData); indata = stdin.readline(); y = Integer.parseInt(inData); while (x!= y) if (x < y) y = y - x; else x = x - y; System.out.println(x); 60

61 2 Mehr Java Oft müssen viele Werte gleichen Typs gespeichert werden. Idee: Lege sie konsekutiv ab! Greife auf einzelne Werte über ihren Index zu! Feld: Index:

62 Beispiel: Einlesen eines Felds int[] a; // Deklaration int n = read(); a = new int[n]; // Anlegen des Felds int i = 0; while (i < n) { a[i] = read(); i = i+1; } 62

63 type [] name ; deklariert eine Variable für ein Feld (array), dessen Elemente vom Typ type sind. Alternative Schreibweise: type name []; Das Kommando new legt ein Feld einer gegebenen Größe an und liefert einen Verweis darauf zurück: a a = new int[6]; a 63

64 Der Wert einer Feld-Variable ist also ein Verweis. int[] b = a; kopiert den Verweis der Variablen a in die Variable b: a int[] b = a; a b 64

65 Die Elemente eines Felds sind von 0 an durchnumeriert. Die Anzahl der Elemente des Felds name ist name.length. Auf das i-te Element des Felds name greift man mittels name[i] zu. Bei jedem Zugriff wird überprüft, ob der Index erlaubt ist, d.h. im Intervall {0,..., name.length-1} liegt. Liegt der Index außerhalb des Intervalls, wird die ArrayIndexOutofBoundsException ausgelöst ( Exceptions). 65

66 Mehrdimensionale Felder Java unterstützt direkt nur ein-dimensionale Felder. Ein zwei-dimensionales Feld ist ein Feld von Feldern a a 66

67 a a = new int[5][6]; a 67

68 2.1 Mehr Kontrollstrukturen Typische Form der Iteration über Felder: Initialisierung des Laufindex; while-schleife mit Eintrittsbedingung für den Rumpf; Modifizierung des Laufindex am Ende des Rumpfs. 68

69 Beispiel (Forts.): Bestimmung des Minimums int result = a[0]; int i = 1; // Initialisierung while (i < a.length) { if (a[i] < result) result = a[i]; i = i+1; // Modifizierung } write(result); 69

70 Mithilfe des for-statements: int result = a[0]; for (int i = 1; i < a.length; ++i) if (a[i] < result) result = a[i]; write(result); 70

71 Allgemein: for ( init; cond; modify ) stmt... entspricht: { init ; while ( cond ) { stmt modify ;} }... wobei ++i äquivalent ist zu i = i+1 71

72 Warnung: Die Zuweisung x = x+1 ist in Wahrheit ein Ausdruck. Der Wert ist der Wert der rechten Seite. Die Modifizierung der Variable x erfolgt als Seiteneffekt. Der Semikolon ; hinter einem Ausdruck wirft nur den Wert weg... ==... fatal für Fehler in Bedingungen... boolean x = false; if (x = true) write("sorry! This must be an error..."); 72

73 Die Operatoranwendungen ++x und x++ inkrementieren beide den Wert der Variablen x. ++x tut das, bevor der Wert des Ausdrucks ermittelt wird (Pre-Increment). x++ tut das, nachdem der Wert ermittelt wurde (Post-Increment). a[x++] = 7; entspricht: a[x] = 7; x = x+1; a[++x] = 7; entspricht: x = x+1; a[x] = 7; 73

4 Kontrollfluss-Diagramme

4 Kontrollfluss-Diagramme 4 Kontrollfluss-Diagramme In welcher Weise die Operationen eines Programms nacheinander ausgeführt werden, läßt sich anschaulich mithilfe von Kontrollfluss-Diagrammen darstellen. Ingredienzien: Start Stop

Mehr

Java Einführung VARIABLEN und DATENTYPEN Kapitel 2

Java Einführung VARIABLEN und DATENTYPEN Kapitel 2 Java Einführung VARIABLEN und DATENTYPEN Kapitel 2 Inhalt dieser Einheit Variablen (Sinn und Aufgabe) Bezeichner Datentypen, Deklaration und Operationen Typenumwandlung (implizit/explizit) 2 Variablen

Mehr

Primitive Datentypen

Primitive Datentypen Primitive Datentypen 2 Arten von Datentypen: primitive Datentypen (heute) Objekte (später) Java ist streng typisiert, d.h. für jede Variable muß angegeben werden was für eine Art von Wert sie aufnimmt.

Mehr

Programmiertechnik Operatoren, Kommentare, Ein-/Ausgabe

Programmiertechnik Operatoren, Kommentare, Ein-/Ausgabe Programmiertechnik Operatoren, Kommentare, Ein-/Ausgabe Prof. Dr. Oliver Haase Oliver Haase Hochschule Konstanz 1 Was sind Operatoren? Ein Operator ist eine in die Programmiersprache eingebaute Funktion,

Mehr

Hello World. Javakurs 2014, 1. Vorlesung. Sebastian Schuck. basierend auf der Vorlage von Arne Kappen. wiki.freitagsrunde.org. 3.

Hello World. Javakurs 2014, 1. Vorlesung. Sebastian Schuck. basierend auf der Vorlage von Arne Kappen. wiki.freitagsrunde.org. 3. Hello World Javakurs 2014, 1. Vorlesung Sebastian Schuck basierend auf der Vorlage von Arne Kappen wiki.freitagsrunde.org 3. März 2014 This work is licensed under the Creative Commons Attribution-ShareAlike

Mehr

Prinzipielle Ausführungsvarianten I

Prinzipielle Ausführungsvarianten I Software Entwicklung 1 Annette Bieniusa / Arnd Poetzsch-Heffter Unser erstes Java Programm AG Softech FB Informatik TU Kaiserslautern Bieniusa/Poetzsch-Heffter Software Entwicklung 1 2/ 39 Hello World!

Mehr

Das erste Programm soll einen Text zum Bildschirm schicken. Es kann mit jedem beliebigen Texteditor erstellt werden.

Das erste Programm soll einen Text zum Bildschirm schicken. Es kann mit jedem beliebigen Texteditor erstellt werden. Einfache Ein- und Ausgabe mit Java 1. Hallo-Welt! Das erste Programm soll einen Text zum Bildschirm schicken. Es kann mit jedem beliebigen Texteditor erstellt werden. /** Die Klasse hello sendet einen

Mehr

Einführung Datentypen Verzweigung Schleifen Funktionen Dynamische Datenstrukturen. Java Crashkurs. Kim-Manuel Klein (kmk@informatik.uni-kiel.

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

Mehr

Ein erstes Java-Programm

Ein erstes Java-Programm Ein erstes Java-Programm public class Rechnung { public static void main (String [] arguments) { int x, y; x = 10; y = -1 + 23 * 33 + 3 * 7 * (5 + 6); System.out.print ("Das Resultat ist "); System.out.println

Mehr

II.1.1. Erste Schritte - 1 -

II.1.1. Erste Schritte - 1 - ! 1. Grundelemente der Programmierung! 2. Objekte, Klassen und Methoden! 3. Rekursion und dynamische Datenstrukturen! 4. Erweiterung von Klassen und fortgeschrittene Konzepte II.1.1. Erste Schritte - 1

Mehr

1. Der Einstieg in Java

1. Der Einstieg in Java 1. Der Einstieg in Java Was heißt Programmieren? 1. Der Einstieg in Java Lernziele: Am Ende dieses Kapitels sollen Sie wissen, aus welchen Bestandteilen ein Java-Programm besteht, Java-Programme übersetzen

Mehr

Java Einführung Operatoren Kapitel 2 und 3

Java Einführung Operatoren Kapitel 2 und 3 Java Einführung Operatoren Kapitel 2 und 3 Inhalt dieser Einheit Operatoren (unär, binär, ternär) Rangfolge der Operatoren Zuweisungsoperatoren Vergleichsoperatoren Logische Operatoren 2 Operatoren Abhängig

Mehr

Einführung in die Java- Programmierung

Einführung in die Java- Programmierung Einführung in die Java- Programmierung Dr. Volker Riediger Der hat die früher handschriftlichen Folien lesbar gemacht. Tassilo Horn riediger horn@uni-koblenz.de WiSe 2012/13 1 Heutige Themen Hello World!

Mehr

620.900 Propädeutikum zur Programmierung

620.900 Propädeutikum zur Programmierung 620.900 Propädeutikum zur Programmierung Andreas Bollin Institute für Informatik Systeme Universität Klagenfurt Andreas.Bollin@uni-klu.ac.at Tel: 0463 / 2700-3516 Lösung der Aufgaben (1/2) Lösung Aufgabe

Mehr

Der Aufruf von DM_in_Euro 1.40 sollte die Ausgabe 1.40 DM = 0.51129 Euro ergeben.

Der Aufruf von DM_in_Euro 1.40 sollte die Ausgabe 1.40 DM = 0.51129 Euro ergeben. Aufgabe 1.30 : Schreibe ein Programm DM_in_Euro.java zur Umrechnung eines DM-Betrags in Euro unter Verwendung einer Konstanten für den Umrechnungsfaktor. Das Programm soll den DM-Betrag als Parameter verarbeiten.

Mehr

Gliederung. Tutorium zur Vorlesung. Gliederung. Gliederung. 1. Gliederung der Informatik. 1. Gliederung der Informatik. 1. Gliederung der Informatik

Gliederung. Tutorium zur Vorlesung. Gliederung. Gliederung. 1. Gliederung der Informatik. 1. Gliederung der Informatik. 1. Gliederung der Informatik Informatik I WS 2012/13 Tutorium zur Vorlesung 1. Alexander Zietlow zietlow@informatik.uni-tuebingen.de Wilhelm-Schickard-Institut für Informatik Eberhard Karls Universität Tübingen 11.02.2013 1. 2. 1.

Mehr

OO Programmierung in Java

OO Programmierung in Java OO Programmierung in Java Einführung WS 212/213 Prof. Dr. Margarita Esponda M. Esponda-Argüero 1 Homepage Homepage http://www.esponda.de/ws_12_13/jbk Vorlesungsfolien Literaturliste Übungen Zusätzliches

Mehr

II. Grundlagen der Programmierung. 9. Datenstrukturen. Daten zusammenfassen. In Java (Forts.): In Java:

II. Grundlagen der Programmierung. 9. Datenstrukturen. Daten zusammenfassen. In Java (Forts.): In Java: Technische Informatik für Ingenieure (TIfI) WS 2005/2006, Vorlesung 9 II. Grundlagen der Programmierung Ekkart Kindler Funktionen und Prozeduren Datenstrukturen 9. Datenstrukturen Daten zusammenfassen

Mehr

1. Der Einstieg in Java. Was heißt Programmieren?

1. Der Einstieg in Java. Was heißt Programmieren? 1. Der Einstieg in Java Lernziele: Am Ende dieses Kapitels sollen Sie wissen, aus welchen Bestandteilen ein Java-Programm besteht, Java-Programme übersetzen und ausführen können, Möglichkeiten der Kommentierung

Mehr

4. Datentypen. Einleitung Eingebaute Datentypen. Konversion / Type-Cast. Operatoren. Übersicht Die Datentypen char, float und double Standardwerte

4. Datentypen. Einleitung Eingebaute Datentypen. Konversion / Type-Cast. Operatoren. Übersicht Die Datentypen char, float und double Standardwerte 4. Datentypen Einleitung Eingebaute Datentypen Übersicht Die Datentypen char, float und double Standardwerte Konversion / Type-Cast Datentyp von Literalen Operatoren Ausdrücke Allgemeine Informatik 2 SS09

Mehr

Dr. Monika Meiler. Inhalt

Dr. Monika Meiler. Inhalt Inhalt 5 Referenzdatentypen - Felder... 5-2 5.1 Eindimensionale Felder - Vektoren... 5-3 5.1.1 Vereinbarung... 5-3 5.1.2 Referenzen sind keine Felder... 5-4 5.1.3 Kopieren eindimensionaler Felder... 5-6

Mehr

Themen der Übung. Java. Java installieren. Java installieren. Installation (Fortsetzung)

Themen der Übung. Java. Java installieren. Java installieren. Installation (Fortsetzung) Themen der Übung Java CoMa-Übung II TU Berlin 1 Java-Installation Hello World 3 Temperature 4.10.01 CoMa-Übung II (TU Berlin) Java 4.10.01 1 / 8 CoMa-Übung II (TU Berlin) Java 4.10.01 / 8 Java installieren

Mehr

Programmiervorkurs. Organisation: Steffen Gebert, Alexander Wolff. Tutoren: Jürgen Zöller, Jonathan Stoll. Wintersemester 2012/2013

Programmiervorkurs. Organisation: Steffen Gebert, Alexander Wolff. Tutoren: Jürgen Zöller, Jonathan Stoll. Wintersemester 2012/2013 Programmiervorkurs Wintersemester 2012/2013 Organisation: Steffen Gebert, Alexander Wolff Tutoren: Jürgen Zöller, Jonathan Stoll Kontakt (für Organisatorisches, Fehler auf Folien...): Steffen Gebert steffen.gebert@informatik.uni-wuerzburg.de

Mehr

Java Kurs für Anfänger Einheit 2 Datentypen und Operationen

Java Kurs für Anfänger Einheit 2 Datentypen und Operationen Java Kurs für Anfänger Einheit 2 Datentypen und Operationen Ludwig-Maximilians-Universität München (Institut für Informatik: Programmierung und Softwaretechnik von Prof.Wirsing) 16. Mai 2009 Inhaltsverzeichnis

Mehr

5.4 Klassen und Objekte

5.4 Klassen und Objekte 5.4 Klassen und Objekte Zusammenfassung: Projekt Figuren und Zeichner Figuren stellt Basisklassen für geometrische Figuren zur Verfügung Zeichner bietet eine übergeordnete Klasse Zeichner, welche die Dienstleistungen

Mehr

Kontrollstrukturen, Pseudocode und Modulo-Rechnung

Kontrollstrukturen, Pseudocode und Modulo-Rechnung Kontrollstrukturen, Pseudocode und Modulo-Rechnung CoMa-Übung III TU Berlin 29.10.2012 CoMa-Übung III (TU Berlin) Kontrollstrukturen, Pseudocode und Modulo-Rechnung 29.10.2012 1 / 1 Themen der Übung 1

Mehr

Vorkurs Informatik WiSe 15/16

Vorkurs Informatik WiSe 15/16 Java 1 Dr. Werner Struckmann / Stephan Mielke, Jakob Garbe, 12.10.2015 Technische Universität Braunschweig, IPS Überblick Organisatorisches Arbeitsablauf Hello! 12.10.2015 Dr. Werner Struckmann / Stephan

Mehr

Programmieren in C. C Syntax Datentypen, Operatoren und Kontrollstrukturen. Prof. Dr. Nikolaus Wulff

Programmieren in C. C Syntax Datentypen, Operatoren und Kontrollstrukturen. Prof. Dr. Nikolaus Wulff Programmieren in C C Syntax Datentypen, Operatoren und Kontrollstrukturen Prof. Dr. Nikolaus Wulff Elementare Typen Imperative und objektorientierte Programmiersprachen bieten i.d.r. einen Satz elementarer

Mehr

1 Polymorphie (Vielgestaltigkeit)

1 Polymorphie (Vielgestaltigkeit) 1 Polymorphie (Vielgestaltigkeit) Problem: Unsere Datenstrukturen List, Stack und Queue können einzig und allein int-werte aufnehmen. Wollen wir String-Objekte, andere Arten von Zahlen oder andere Objekttypen

Mehr

Erster Kontakt mit Java und Pseudocode

Erster Kontakt mit Java und Pseudocode Erster Kontakt mit Java und Pseudocode CoMa-Übung II TU Berlin 23.10.2013 CoMa-Übung II (TU Berlin) Erster Kontakt mit Java und Pseudocode 23.10.2013 1 / 27 Themen der Übung 1 Java auf meinem Rechner 2

Mehr

Datenbankanwendungsprogrammierung Crashkurs Java

Datenbankanwendungsprogrammierung Crashkurs Java Datenbankanwendungsprogrammierung Crashkurs Java Denny Priebe Datenbankanwendungsprogrammierung p. Unterschiede zu C, C++ typedefs, Präprozessor Strukturen, Unions globale Funktionen Mehrfachvererbung

Mehr

2 Einfache Rechnungen

2 Einfache Rechnungen 2 Einfache Rechnungen 2.1 Zahlen Computer, auch bekannt als Rechner, sind sinnvoller eingesetzt, wenn sie nicht nur feste Texte ausgeben, sondern eben auch rechnen. Um das Rechnen mit Zahlen zu verstehen,

Mehr

Primitive Datentypen. Dr. Wolfgang Süß Thorsten Schlachter

Primitive Datentypen. Dr. Wolfgang Süß Thorsten Schlachter Dr. Wolfgang Süß Thorsten Schlachter Java-Bezeichner Für Variablen, Methoden, Klassen und Schnittstellen werden Bezeichner auch Identifizierer (von engl. identifier) genannt vergeben. Ein Bezeichner ist

Mehr

Programmieren I. Prinzipieller Ablauf. Eigenschaften von JAVA. Source-Code Javac Bytecode. Java Virtual Machine (Java, Browser, Appletviewer)

Programmieren I. Prinzipieller Ablauf. Eigenschaften von JAVA. Source-Code Javac Bytecode. Java Virtual Machine (Java, Browser, Appletviewer) Programmieren I Grundlagen von JAVA Dr. Klaus Höppner Hello World in JAVA Hochschule Darmstadt WS 2007/2008 Elementare Datentypen 1 / 17 2 / 17 Eigenschaften von JAVA Prinzipieller Ablauf Plattform-und

Mehr

Javaprogrammierung mit NetBeans. Variablen, Datentypen, Methoden

Javaprogrammierung mit NetBeans. Variablen, Datentypen, Methoden Javaprogrammierung mit NetBeans Variablen, Datentypen, Methoden Programmieren 2 Java Bezeichner Bezeichner: Buchstabe _ $ Buchstabe _ $ Ziffer Groß- und Kleinbuchstaben werden strikt unterschieden. Schlüsselwörter

Mehr

Algorithmische Kernsprache. Zuweisung, einfache und bedingte Anweisung, Blöcke, Schleifen, return, debugging.

Algorithmische Kernsprache. Zuweisung, einfache und bedingte Anweisung, Blöcke, Schleifen, return, debugging. Algorithmische Kernsprache Zuweisung, einfache und bedingte Anweisung, Blöcke, Schleifen, return, debugging. Ausdrücke Anweisungen Ausdrücke bezeichnen einen Wert Kontext stellt Werte von Variablen Werte

Mehr

Einführung in die C++ Programmierung für Ingenieure

Einführung in die C++ Programmierung für Ingenieure Einführung in die C++ Programmierung für Ingenieure MATTHIAS WALTER / JENS KLUNKER Universität Rostock, Lehrstuhl für Modellierung und Simulation 14. November 2012 c 2012 UNIVERSITÄT ROSTOCK FACULTY OF

Mehr

Numerische Datentypen. Simon Weidmann

Numerische Datentypen. Simon Weidmann Numerische Datentypen Simon Weidmann 08.05.2014 1 Ganzzahlige Typen 1.1 Generelles Bei Datentypen muss man immer zwei elementare Eigenschaften unterscheiden: Zuerst gibt es den Wertebereich, zweitens die

Mehr

Grundlagen. Die Komponenten eines C Programms. Das erste Programm

Grundlagen. Die Komponenten eines C Programms. Das erste Programm Grundlagen 1. Die Komponenten eines C Programms 2. Ein Programm erzeugen und übersetzen 3. Variablen Deklarieren und Werte zuweisen 4. Zahlen eingeben mit der Tastatur 5. Arithmetische Ausdrücke und Berechnungen

Mehr

620.900 Propädeutikum zur Programmierung

620.900 Propädeutikum zur Programmierung 620.900 Propädeutikum zur Programmierung Andreas Bollin Institute für Informatik Systeme Universität Klagenfurt Andreas.Bollin@uni-klu.ac.at Tel: 0463 / 2700-3516 Arrays Wiederholung (1/5) Array = GEORDNETE

Mehr

Programmieren I. Kontrollstrukturen. Heusch 8 Ratz 4.5. www.kit.edu. Institut für Angewandte Informatik

Programmieren I. Kontrollstrukturen. Heusch 8 Ratz 4.5. www.kit.edu. Institut für Angewandte Informatik Programmieren I Kontrollstrukturen Heusch 8 Ratz 4.5 KIT Universität des Landes Baden-Württemberg und nationales Großforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Arten von Kontrollstrukturen

Mehr

Java Einführung Programmcode

Java Einführung Programmcode Java Einführung Programmcode Inhalt dieser Einheit Programmelemente Der erste Programmcode Die Entwicklungsumgebung: Sun's Java Software Development Kit (SDK) Vom Code zum Ausführen des Programms 2 Wiederholung:

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 7. Elmar Fuchs Grundlagen Programmierung. 1. Ausgabe, Dezember 2011 JAV7

Java 7. Elmar Fuchs Grundlagen Programmierung. 1. Ausgabe, Dezember 2011 JAV7 Java 7 Elmar Fuchs Grundlagen Programmierung 1. Ausgabe, Dezember 2011 JAV7 5 Java 7 - Grundlagen Programmierung 5 Kontrollstrukturen In diesem Kapitel erfahren Sie wie Sie die Ausführung von von Bedingungen

Mehr

Programmieren mit. Java. Lars Knipping. Februar 2002

Programmieren mit. Java. Lars Knipping. Februar 2002 Programmieren mit Java Lars Knipping Februar 2002 1 Java nach Sun Java ist eine einfache, objektorientierte, verteilte, interpretierte, robuste, sichere, architekturneutral portable, hochleistungsfähige,

Mehr

Distributed Computing Group

Distributed Computing Group JAVA TUTORIAL Distributed Computing Group Vernetzte Systeme - SS 06 Übersicht Warum Java? Interoperabilität grosse und gut dokumentierte Library weit verbreitet Syntax sehr nahe an C Erfahrung: Java wird

Mehr

Einführung in die Informatik für Hörer aller Fakultäten II. Andreas Podelski Stephan Diehl Uwe Waldmann

Einführung in die Informatik für Hörer aller Fakultäten II. Andreas Podelski Stephan Diehl Uwe Waldmann Einführung in die Informatik für Hörer aller Fakultäten II Andreas Podelski Stephan Diehl Uwe Waldmann 1 Einführung in die Informatik für Hörer aller Fakultäten II Andreas Podelski Stephan Diehl Uwe Waldmann

Mehr

Diana Lange. Generative Gestaltung Operatoren

Diana Lange. Generative Gestaltung Operatoren Diana Lange Generative Gestaltung Operatoren Begriffserklärung Verknüpfungsvorschrift im Rahmen logischer Kalküle. Quelle: google Operatoren sind Zeichen, die mit einer bestimmten Bedeutung versehen sind.

Mehr

Eine Klasse beschreibt Objekte mit gleichen Attributen und Methoden.

Eine Klasse beschreibt Objekte mit gleichen Attributen und Methoden. Grundwissen Informatik Objekt Attribut Methoden Als Objekte bezeichnet man alle Gegenstände, Dinge, Lebewesen, Begriffe oder Strukturen unserer Welt ( Autos, Räume, Bakterien, Lehrer, Schüler, Kunden,

Mehr

L6. Operatoren und Ausdrücke

L6. Operatoren und Ausdrücke L6. Operatoren und Ausdrücke 1. Arithmetische Operatoren: +, -, *, /, %, --, ++ 2. Zuweisung-Operatoren: =, +=, -=, *=, /= 3. Vergleichsoperatoren: =, ==,!= 4. Logische Operatoren:!, &&, 5.

Mehr

Einführung in die Java- Programmierung

Einführung in die Java- Programmierung Einführung in die Java- Programmierung Dr. Volker Riediger Tassilo Horn riediger horn@uni-koblenz.de WiSe 2012/13 1 Rückblick Datentypen (int, long, double, boolean, String) Variablen und Variablendeklarationen

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

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

Einfache Rechenstrukturen und Kontrollfluss II

Einfache Rechenstrukturen und Kontrollfluss II Einfache Rechenstrukturen und Kontrollfluss II Martin Wirsing in Zusammenarbeit mit Moritz Hammer und Axel Rauschmayer http://www.pst.informatik.uni-muenchen.de/lehre/ss06/infoii/ SS 06 Ziele Lernen imperative

Mehr

1 Syntax von Programmiersprachen

1 Syntax von Programmiersprachen 1 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 Programmier-Sprache Festlegung, wie Programme

Mehr

Vorlesung Informatik II

Vorlesung Informatik II Vorlesung Informatik II Universität Augsburg Wintersemester 2011/2012 Prof. Dr. Bernhard Bauer Folien von: Prof. Dr. Robert Lorenz Lehrprofessur für Informatik 02. JAVA: Erstes Programm 1 Das erste Java-Programm

Mehr

Autor: Michael Spahn Version: 1.0 1/10 Vertraulichkeit: öffentlich Status: Final Metaways Infosystems GmbH

Autor: Michael Spahn Version: 1.0 1/10 Vertraulichkeit: öffentlich Status: Final Metaways Infosystems GmbH Java Einleitung - Handout Kurzbeschreibung: Eine kleine Einführung in die Programmierung mit Java. Dokument: Autor: Michael Spahn Version 1.0 Status: Final Datum: 23.10.2012 Vertraulichkeit: öffentlich

Mehr

Tutorium Rechnerorganisation

Tutorium Rechnerorganisation Woche 2 Tutorien 3 und 4 zur Vorlesung Rechnerorganisation 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu

Mehr

Reihungen. Martin Wirsing. in Zusammenarbeit mit Matthias Hölzl und Nora Koch 11/03

Reihungen. Martin Wirsing. in Zusammenarbeit mit Matthias Hölzl und Nora Koch 11/03 Reihungen Martin Wirsing in Zusammenarbeit mit Matthias Hölzl und Nora Koch 11/03 2 Ziele Die Datenstruktur der Reihungen verstehen: mathematisch und im Speicher Grundlegende Algorithmen auf Reihungen

Mehr

Teil IV. Grundlagen der Programmierung

Teil IV. Grundlagen der Programmierung Teil IV Grundlagen der Programmierung Überblick 1 Einleitung zu C und C++ Aufbau von Programmen/Dateien Steueranweisungen Funktionen Mehr zu Datentypen: Felder, Zeiger und Strukturen Arbeit mit Dateien

Mehr

Test zu Grundlagen der Programmierung Leitung: Michael Hahsler. 21. November 2003

Test zu Grundlagen der Programmierung Leitung: Michael Hahsler. 21. November 2003 Test zu Grundlagen der Programmierung Leitung: Michael Hahsler 1. November 00 Name Martrikelnummer Unterschrift Bitte kreuzen Sie das Studium an, für das Sie diese Prüfung ablegen: O Bakkalaureat Wirtschaftsinformatik

Mehr

Ab J2SE 5.0 Unterstützung formatierter Bildschirmausgaben. Mit den Operatoren und Klammern können Boolesche Ausdrücke gebildet werden Beispiel:

Ab J2SE 5.0 Unterstützung formatierter Bildschirmausgaben. Mit den Operatoren und Klammern können Boolesche Ausdrücke gebildet werden Beispiel: Die Funktionen print() und println() Die Funktion System.out.printf() Format eines Funktionsaufrufs funktionsname(); Innerhalb der Klammern können Argumente angegeben werden Die Funktion kann ein Ergebnis

Mehr

Java-Vorkurs 2015. Wintersemester 15/16

Java-Vorkurs 2015. Wintersemester 15/16 Java-Vorkurs 2015 Wintersemester 15/16 Herzlich Willkommen! package de.unistuttgart.47.01.javavorkurs; public class WelcomeErstis { public static void main(string[] args){ System.out.println( Herzlich

Mehr

Liebe Leserin, lieber Leser, in der ersten Auflage von Programmieren lernen mit Java von Hans- Peter Habelitz sind einige Fehler zu korrigieren.

Liebe Leserin, lieber Leser, in der ersten Auflage von Programmieren lernen mit Java von Hans- Peter Habelitz sind einige Fehler zu korrigieren. Liebe Leserin, lieber Leser, in der ersten Auflage von Programmieren lernen mit Java von Hans- Peter Habelitz sind einige Fehler zu korrigieren. Niemand bedauert diese Fehler mehr als der Autor selbst.

Mehr

Java-Schulung Grundlagen

Java-Schulung Grundlagen Java-Schulung Grundlagen Java 2 Standard Edition JDK 5 / 6 31.05.2008 Marcel Wieczorek 1 Themenübersicht Basiswissen Objektorientierung Datentypen Fehlerbehandlung Sonstiges Einführung Klassen, Strings

Mehr

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf http://informatik.swoke.de. Seite 1 von 16

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf http://informatik.swoke.de. Seite 1 von 16 Kapitel 5 Arithmetische Operatoren Seite 1 von 16 Arithmetische Operatoren - Man unterscheidet unäre und binäre Operatoren. - Je nachdem, ob sie auf einen Operanden wirken, oder eine Verknüpfung zweier

Mehr

Einführung in die Programmierung mit Java

Einführung in die Programmierung mit Java JUSTUS-LIEBIG-UNIVERSITÄT GIESSEN ALLG. BWL UND WIRTSCHAFTSINFORMATIK UNIV.-PROF. DR. AXEL C. SCHWICKERT Informationen zur WBT-Serie Einführung in die Programmierung mit Java Univ.-Prof. Dr. Axel C. Schwickert

Mehr

Objektorientierte Programmierung OOP Programmieren mit Java

Objektorientierte Programmierung OOP Programmieren mit Java 4 Datenfelder, Parameterübergabe, Casting Objektorientierte Programmierung OOP Programmieren mit Java 4 Datenfelder, Parameterübergabe, Casting 4 Datenfelder, Parameterübergabe, Casting 4.1 Datenfelder

Mehr

Die Programmiersprache C

Die Programmiersprache C Die Programmiersprache C höhere Programmiersprache (mit einigen Assembler-ähnlichen Konstrukten) gut verständliche Kommandos muss von Compiler in maschinenlesbaren Code (Binärdatei) übersetzt werden universell,

Mehr

Dr. Monika Meiler. Inhalt

Dr. Monika Meiler. Inhalt Inhalt 4 Einführung in die Programmiersprache Java (Teil II)... 4-2 4.4 Strukturierte Programmierung... 4-2 4.4.1 Strukturierung im Kleinen... 4-2 4.4.2 Addierer (do-schleife)... 4-3 4.4.3 Ein- Mal- Eins

Mehr

Einführung in die Programmierung II. 2. Fundamentale Datentypen, Ausdrücke

Einführung in die Programmierung II. 2. Fundamentale Datentypen, Ausdrücke Einführung in die Programmierung II 2. Fundamentale Datentypen, Ausdrücke Stefan Zimmer 3. 5. 2006-1- Objekte im Speicher Ein Objekt ist für uns zunächst einfach ein fester Bereich im Speicher unseres

Mehr

Compiler: Vom Code zum Maschinen-Code. C Programmierung - Vorlesung 2 Hochschule Regensburg 19.03.2012 Universitätsstraße 31, 93053 Regensburg

Compiler: Vom Code zum Maschinen-Code. C Programmierung - Vorlesung 2 Hochschule Regensburg 19.03.2012 Universitätsstraße 31, 93053 Regensburg Compiler: Vom Code zum Maschinen-Code C Programmierung - Vorlesung 2 Hochschule Regensburg 19.03.2012 Universitätsstraße 31, 93053 Regensburg Prof. Dr. Jan Dünnweber Zusammenhänge: C und Assembler Hochsprachen

Mehr

2. Einfache Java-Programme Grundlagen der Programmierung 1 (Java)

2. Einfache Java-Programme Grundlagen der Programmierung 1 (Java) 2. Einfache Java-Programme Grundlagen der Programmierung 1 (Java) Fachhochschule Darmstadt Haardtring 100 D-64295 Darmstadt Prof. Dr. Bernhard Humm FH Darmstadt, 4. Oktober 2005 Agenda Agenda Grundstruktur

Mehr

Tutorium Java Ein Überblick. Helge Janicke

Tutorium Java Ein Überblick. Helge Janicke Tutorium Java Ein Überblick Helge Janicke 26. Oktober 2000 1 VORRAUSSETZUNGEN ZUM PROGRAMMIEREN MIT JAVA. 1 1 Vorraussetzungen zum Programmieren mit Java. Was braucht man, wenn man mit Java programmieren

Mehr

C-Vorrangregeln. Version 1.3 6.7.2009. email: tb@ostc.de Web: www.ostc.de

C-Vorrangregeln. Version 1.3 6.7.2009. email: tb@ostc.de Web: www.ostc.de C-Vorrangregeln Version 1.3 6.7.2009 email: tb@ostc.de Web: www.ostc.de Die Informationen in diesem Skript wurden mit größter Sorgfalt erarbeitet. Dennoch können Fehler nicht vollständig ausgeschlossen

Mehr

PIWIN I. Praktische Informatik für Wirtschaftsmathematiker, Ingenieure und Naturwissenschaftler I. Vorlesung 3 SWS WS 2007/2008

PIWIN I. Praktische Informatik für Wirtschaftsmathematiker, Ingenieure und Naturwissenschaftler I. Vorlesung 3 SWS WS 2007/2008 PIWIN I Kap. 7 Objektorientierte Programmierung - Einführung 1 PIWIN I Praktische Informatik für Wirtschaftsmathematiker, Ingenieure und Naturwissenschaftler I Vorlesung 3 SWS WS 2007/2008 FB Informatik

Mehr

Dr. Monika Meiler. Inhalt

Dr. Monika Meiler. Inhalt Inhalt 3 Grundelemente der Java-Programmierung... 3-2 3.1 Alphabet... 3-2 3.2 Bezeichner... 3-3 3.3 Kommentare... 3-3 3.4 Elementardatentypen... 3-5 3.5 Konstanten (Literale)... 3-7 3.5.1 Unbenannte Konstanten...

Mehr

Einfache Arrays. Annabelle Klarl. Einführung in die Informatik Programmierung und Softwareentwicklung

Einfache Arrays. Annabelle Klarl. Einführung in die Informatik Programmierung und Softwareentwicklung Annabelle Klarl Zentralübung zur Vorlesung Einführung in die Informatik: http://www.pst.ifi.lmu.de/lehre/wise-13-14/infoeinf WS13/14 Action required now 1. Smartphone: installiere die App "socrative student"

Mehr

Programmieren. 10. Tutorium 4./ 5. Übungsblatt Referenzen

Programmieren. 10. Tutorium 4./ 5. Übungsblatt Referenzen Programmieren 10. Tutorium 4./ 5. Übungsblatt Inhalt I. Übungsblatt 4 II. III. - Rückgabe und Besprechung - Vorbereitung auf Wiederholung/ Nachtrag - Operatorpräzedenzen IV. Übungsblatt 5 - Vorstellung

Mehr

5. Tutorium zu Programmieren

5. Tutorium zu Programmieren 5. Tutorium zu Programmieren Dennis Ewert Gruppe 6 Universität Karlsruhe Institut für Programmstrukturen und Datenorganisation (IPD) Lehrstuhl Programmierparadigmen WS 2008/2009 c 2008 by IPD Snelting

Mehr

Nino Simunic M.A. Computerlinguistik, Campus DU

Nino Simunic M.A. Computerlinguistik, Campus DU Vorlesung 2. Sitzung Grundlegende Programmiertechniken Wintersemester 2007/2008 Dozent Nino Simunic M.A. Computerlinguistik, Campus DU Grundlegende Programmiertechniken, WS 2007/2008 Programm, Algorithmus

Mehr

Kapitel 11: Wiederholung und Zusammenfassung

Kapitel 11: Wiederholung und Zusammenfassung Wiederholung und Zusammenfassung 1: Begriff und Grundprobleme der Informatik Begriff Informatik Computer als universelle Rechenmaschine Grenzen der Berechenbarkeit Digitalisierung Problem der Komplexität

Mehr

AK-Automatisierungs und Kommunikationstechnik TI Technische Informatik. NWT Netzwerktechnik www.munz-udo.de

AK-Automatisierungs und Kommunikationstechnik TI Technische Informatik. NWT Netzwerktechnik www.munz-udo.de Aufgaben: Ein Ausgabe Ein Rechner verwaltet nicht nur Daten, die während der Laufzeit des Programms erzeugt werden. Die meisten Programme greifen auf ältere Datenbestände zurück oder erzeugen für einen

Mehr

Übersicht. Informatik 2 Teil 3 Anwendungsbeispiel für objektorientierte Programmierung

Übersicht. Informatik 2 Teil 3 Anwendungsbeispiel für objektorientierte Programmierung Übersicht 3.1 Modell Konto 3.2 Modell Konto - Erläuterungen 3.3 Benutzer Ein- und Ausgabe mit Dialogfenster I 3.4 Benutzer Ein- und Ausgabe mit Dialogfenster II 3.5 Klassen- und Objekteigenschaften des

Mehr

Javakurs für Anfänger

Javakurs für Anfänger Javakurs für Anfänger Einheit 02: Klassen & Objekte Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda 1. Teil: Klassen Grundstruktur einer Java-Klasse Eigenschaften (Attribute) Variablen

Mehr

Algorithmen am Beispiel Java I www.java.com/de

Algorithmen am Beispiel Java I www.java.com/de Algorithmen am Beispiel Java I www.java.com/de Entwicklungsumgebung: JDK 6.1.0 empfohlener Editor : http://notepad-plus.sourceforge.net/de/site.htm Download Java SE Runtime Environment (deutsch): http://www.soft-ware.net/add.asp?url=http%3a%2f%2fjava-runtime-environment.software.net%2fdownload2.asp%3fcode%3djbibb%26pro%3dp02231

Mehr

C++ - Operatoren. Eigene Klassen mit neuen Funktionen

C++ - Operatoren. Eigene Klassen mit neuen Funktionen C++ - Operatoren Eigene Klassen mit neuen Funktionen Übersicht Klassen bisher Eigene Operatoren definieren 2 Bisher Durch Kapselung, Vererbung und Polymorphy können nun eigene Klassen definiert werden,

Mehr

Programmieren in C. Operatoren, Variablen und deren Sichtbarkeit. Prof. Dr. Nikolaus Wulff

Programmieren in C. Operatoren, Variablen und deren Sichtbarkeit. Prof. Dr. Nikolaus Wulff Programmieren in C Operatoren, Variablen und deren Sichtbarkeit Prof. Dr. Nikolaus Wulff Auswertung von Ausdrücken Was passiert wenn ein Ausdruck wie z. B. int y,x=2; y = ++x * x++; im Computer abgearbeitet

Mehr

IT- Handbuch für Fachinformatiker, 7. Auflage: Text- Lösungen Sascha Kersken

IT- Handbuch für Fachinformatiker, 7. Auflage: Text- Lösungen Sascha Kersken IT- Handbuch für Fachinformatiker, 7. Auflage: Text- Lösungen Sascha Kersken Im Folgenden finden Sie jeweils die korrekte Antwort zu den im Buch abgedruckten Prüfungsfragen, soweit die Antworten in Textform

Mehr

Objektorientiertes Programmieren für Ingenieure

Objektorientiertes Programmieren für Ingenieure Uwe Probst Objektorientiertes Programmieren für Ingenieure Anwendungen und Beispiele in C++ 18 2 Von C zu C++ 2.2.2 Referenzen und Funktionen Referenzen als Funktionsparameter Liefert eine Funktion einen

Mehr

Einführung in Java. PING e.v. Weiterbildung Andreas Rossbacher 24. März 2005

Einführung in Java. PING e.v. Weiterbildung Andreas Rossbacher 24. März 2005 Einführung in Java PING e.v. Weiterbildung Andreas Rossbacher 24. März 2005 Gliederung 1. Was ist Java / Geschichte von Java 2. Prinzip der Plattformunabhängigkeit 3. Wie kommt man vom Quellcode zum Programm

Mehr

2. Programmierung in C

2. Programmierung in C 2. Programmierung in C Inhalt: Überblick über Programmiersprachen, Allgemeines zur Sprache C C: Basisdatentypen, Variablen, Konstanten Operatoren, Ausdrücke und Anweisungen Kontrollstrukturen (Steuerfluss)

Mehr

PHP 5.4 ISBN 978-3-86249-327-2. Stephan Heller, Andreas Dittfurth 1. Ausgabe, September 2012. Grundlagen zur Erstellung dynamischer Webseiten GPHP54

PHP 5.4 ISBN 978-3-86249-327-2. Stephan Heller, Andreas Dittfurth 1. Ausgabe, September 2012. Grundlagen zur Erstellung dynamischer Webseiten GPHP54 PHP 5.4 Stephan Heller, Andreas Dittfurth 1. Ausgabe, September 2012 Grundlagen zur Erstellung dynamischer Webseiten ISBN 978-3-86249-327-2 GPHP54 5 PHP 5.4 - Grundlagen zur Erstellung dynamischer Webseiten

Mehr

Inhaltsverzeichnis. Grundbegriffe der C-Programmierung Für den HI-TECH C-Compiler

Inhaltsverzeichnis. Grundbegriffe der C-Programmierung Für den HI-TECH C-Compiler Inhaltsverzeichnis Grundbegriffe der C-Programmierung 1. Grundsätzliches... 2 1.1 Darstellung von Werten... 2 1.1.1 Dezimale Zahlendarstellung... 2 1.1.2 Binäre Zahlendarstellung... 3 1.1.3 Hexadezimale

Mehr

Objective-C CheatSheet

Objective-C CheatSheet App-Templates: Erstellt automatisch einen Navigation Controller mit editierbarem UITableView und DetailView, der bei Klick auf einzelne UITableViewCell angezeigt wird. Kreiert einen GLKitViewController

Mehr

3. Grundlegende Sprachkonstruktionen imperativer Programme

3. Grundlegende Sprachkonstruktionen imperativer Programme 3. Grundlegende Sprachkonstruktionen imperativer Programme Java-Beispiele: Temperature.java Keyboard.java K. Bothe, Institut für Informatik, HU Berlin, GdP, WS 2015/16 Version: 4. Nov. 2015 2 Schwerpunkte

Mehr

Klausur am Montag, 20.Juli um 9 Uhr

Klausur am Montag, 20.Juli um 9 Uhr Klausur am Montag, 20.Juli um 9 Uhr Anmeldung Online (bis zum 09.07.2009): http://www.dbis.cs.uni-frankfurt.de/anmeldung/prg2/klausur/ Modulabschlussprüfler beim jew. PA zusätzlich anmelden! Wo? G1, G2

Mehr

Computeranwendung und Programmierung (CuP)

Computeranwendung und Programmierung (CuP) Computeranwendung und Programmierung (CuP) VO: Peter Auer (Informationstechnologie) UE: Norbert Seifter (Angewandet Mathematik) Organisatorisches (Vorlesung) Vorlesungszeiten Montag 11:15 12:45 Freitag

Mehr

Einführung in die Java- Programmierung

Einführung in die Java- Programmierung Einführung in die Java- Programmierung Dr. Volker Riediger Tassilo Horn riediger horn@uni-koblenz.de WiSe 2012/13 1 Wichtig... Mittags keine Pommes... Praktikum A 230 C 207 (Madeleine + Esma) F 112 F 113

Mehr

Informatik. Studiengang Chemische Technologie. Michael Roth WS 2012/2013. michael.roth@h-da.de. Hochschule Darmstadt -Fachbereich Informatik-

Informatik. Studiengang Chemische Technologie. Michael Roth WS 2012/2013. michael.roth@h-da.de. Hochschule Darmstadt -Fachbereich Informatik- Informatik Studiengang Chemische Technologie Michael Roth michael.roth@h-da.de Hochschule Darmstadt -Fachbereich Informatik- WS 2012/2013 Inhalt Teil VII Einstieg in Java I Michael Roth (h_da) Informatik

Mehr