Einführung in die Programmierung I. 3.0 Funktionen. Thomas R. Gross. Department Informatik ETH Zürich

Größe: px
Ab Seite anzeigen:

Download "Einführung in die Programmierung I. 3.0 Funktionen. Thomas R. Gross. Department Informatik ETH Zürich"

Transkript

1 Einführung in die Programmierung I 3.0 Funktionen Thomas R. Gross Department Informatik ETH Zürich Copyright (c) Pearson 2013 and Thomas R Gross 2016 All rights reserved.

2 Uebersicht 3.1 Parameter 3.2 Return 3.3 String 3.4 Math Bibliothek 3.5 Funktionen 4.0 Klassen Copyright (c) Pearson and Thomas R Gross 2016 All rights reserved. 2

3 Rückblick 3

4 if/else, return Beispiel Schreiben Sie eine Methode quadrant die für ein Paar von reellen Zahlen den Quadranten liefert in dem dieser Punkt liegt. y+ quadrant 2 quadrant 1 x- x+ quadrant 3 quadrant 4 Bespiel: quadrant(-4.2, 17.3) liefert 2 y- Fällt der Punkt auf eine der Achsen des Koordinatensystems liefere 0.

5 if/else, return Lösung public static int quadrant(double x, double y) { if ((x==0) (y==0)) return 0; else if (x>0) return (y>0)? 1 : 4; else return (y>0)? 2 : 3; }

6 C Ueberbleibsel Der? Operator ist ein Ueberbleibsel von C (test)? value1 : value2 Wenn test true ergibt, ist das Ergebnis dieses Ausdrucks value1, sonst value2 Beispiel max = (a>b)? a : b; Nicht so effizient wie man denkt aber kompakt 16

7 Inkrement und Dekrement Kurzform Aequivalente ausführlichere Version variable++; variable = variable + 1; variable--; variable = variable - 1; variable wird verwendet und dann verändert Beispiel int x = 2; int y; y = x++; int temp = x; x = temp + 1; // x now stores 3 y = temp; // y now stores 2

8 Inkrement und Dekrement Puzzles int x = 1; int y = 0; int z = 0; y = x++; z = x++ + x++; Wert x? 4 Wert y? 1 Wert z? 5 int a = 1; a = a++; Wert a? 1 int y = 10; x = y-- - y--; Wert x? 1 Wert y? 8 20

9 Warum ist a == 1? Kurzform Aequivalente ausführlichere Version variable++; variable = variable + 1; variable--; variable = variable - 1; variable wird verwendet und dann verändert Beispiel int x = 2; int y; x = x++; int temp = x; x = temp + 1; // x now stores 3 x = temp; // x now stores 2

10 Weitere Kurzformen Erlauben Verwendung des Wertes einer Variable gefolgt von einer Modifikation (Zuweisung) Kurzform variable += value; variable -= value; variable *= value; variable /= value; variable %= value; Aequivalente ausführlichere Version variable = variable + value; variable = variable - value; variable = variable * value; variable = variable / value; variable = variable % value; Modifikation mit beliebigen Werten (nicht nur 1)

11 Weitere Kurzformen Beispiele x += 3; // x = x + 3; note -= 0.5; // note = note - 0.5; number *= 2; // number = number * 2; Warnung: x += 1; // x = x + 1; x =+ 1; // x = + 1;

12 Die Java Math Klasse Method name Math.abs(value) Math.ceil(value) Math.floor(value) Description absolute value rounds up rounds down Math.log10(value) logarithm, base 10 Math.max(value1, value2) Math.min(value1, value2) Math.pow(base, exp) larger of two values smaller of two values base to the exp power Math.random() random double between 0 and 1 Math.round(value) Math.sqrt(value) Math.sin(value) Math.cos(value) Math.tan(value) Math.toDegrees(value) Math.toRadians(value) nearest whole number square root sine/cosine/tangent of an angle in radians convert degrees to radians and back Constant Description Math.E Math.PI

13 Aufruf von Math Methoden Math.methodName(parameters) Beispiele: double squareroot = Math.sqrt(121.0); System.out.println(squareRoot); // 11.0 int absolutevalue = Math.abs(-50); System.out.println(absoluteValue); // 50 System.out.println(Math.min(3, 7) + 2); // 5

14 Math Fragen Was ist das Ergebnis dieser Ausdrücke: Math.abs(-1.23) Math.pow(3, 2) Math.pow(10, -2) Math.sqrt(121.0) - Math.sqrt(256.0) Math.round(Math.PI) + Math.round(Math.E) Math.ceil(6.022) + Math.floor( ) Math.abs(Math.min(-3, -5))

15 Besonderheiten von Math Methoden Nicht alle Math Methoden lieferen einen int Wert den wir erwarten (könnten), manche z.b. liefern einen double Wert. int x = Math.pow(10, 3); // ERROR: incompatible types Andere Aspekte der reellen Zahlen und des Typs double werden wirspäterkennen lernen

16 Typ Umwandlungen Ausser impliziten Umwandlungen gibt es die Möglichkeit, explicit eine Umwandlung vorzunehmen. implizit: double f = 1.0 / 4; explizite Umwandlungen heissen "cast" oder "type cast" type cast: Umwandlung von einem Typ in den anderen. Um int in double umzuwandeln damit / das gewünschte Ergebnis liefert Um einen double Wert in einen int Wert zu verwandeln

17 Typ Umwandlungen Syntax: (type) expression Beispiele: double result = (double) 19 / 5; // 3.8 int result2 = (int) result; // 3 int x = (int) Math.pow(10, 3); // 1000

18 Typ Umwandlungen (type) ist ein Operator Der "cast operator" Für alle Basistypen verfügbar

19 Bemerkungen über explizite Umwandlungen Typ Umwandlungen hat hohe Präzedenz und der Cast Operator bezieht sich nur auf den (Teil)Ausdruck direkt neben sich. double x = (double) / 2; // 1.0 double y = 1 + (double) 1 / 2; // 1.5 Mit Klammern kann man die Reihenfolge der Auswertung verändern. double average = (double) (a + b + c) / 3; Umwandlungen zu double sind auch implizit möglich. double average = 1.0 * (a + b + c) / 3;

20 Die Java Random Klasse random {adj} zufällig willkürlich [wahllos] zufallsbedingt Zufallsdem Zufall überlassen (aus E-D Wörterbuch) 35

21 Die Java Random Klasse Die Random Klasse liefert uns einen Zufallszahlengenerator Pseudozufallszahlen. Klasse Random ist auch in java.util. import java.util.*; Method name Description nextint() returns a random integer nextint(max) returns a random integer in the range [0, max) in other words, 0 to max-1 inclusive nextdouble() returns a random real number in the range [0.0, 1.0)

22 Die Java Random Klasse Method name Description nextint() returns a random integer nextint(max) returns a random integer in the range [0, max) in other words, 0 to max-1 inclusive nextdouble() returns a random real number in the range [0.0, 1.0) Beispiel: import java.util.*; Random rand = new Random(); int randomnumber = rand.nextint(10); // 0-9

23 Erzeugen von Zufallszahlen Häufig brauchen wir (ganze) Zufallszahlen zwischen 1 und N int n = rand.nextint(20) + 1; // 1-20 inclusive Um eine ganze Zahl in irgendeinem Interval [min, max] zu bekommen (inklusiv Grenzen): name.nextint(size of range) + min mit (size of range) gleich (max - min + 1) Beispiel: Eine zufällige ganze Zahl zwischen 4 und 10 einschliesslich: int n = rand.nextint(7) + 4;

24 Fragen zu Random Mit dieser Deklaration, wie würden Sie erhalten: Random rand = new Random(); Eine zufällige ganze Zahl zwischen 1 und 47 einschliesslich? int random1 = rand.nextint(47) + 1; Eine zufällige ganze Zahl zwischen 23 und 30 einschliesslich? int random2 = rand.nextint(8) + 23; Eine zufällige ganze gerade Zahl zwischen 4 and 12 einschliesslich? int random3 = rand.nextint(5) * 2 + 4;

25 Random und andere Basistypen Die Methode nextdouble liefert eine reelle Zahl (double) zwischen 0.0 und 1.0 Beispiel: eine zufällige Note zwischen 1.0 and 6.0: double randomgrade = rand.nextdouble() * ; Jede Menge von Werten kann auf die ganzen Zahlen abgebildet werden

26 Random und andere Basistypen Jede Menge von Werten kann auf die ganzen Zahlen abgebildet werden Code um zufällig Schere-Stein-Papier zu spielen: int r = rand.nextint(3); if (r == 0) { System.out.println("Schere"); } else if (r == 1) { System.out.println("Stein"); } else { // r == 2 System.out.println("Papier"); }

27 Frage zu Random Schreiben Sie ein Programm um das Rollen zweier Würfel (mit je 6 Seiten) zu simulieren bis die Summe der Würfel 7 ergibt = = = = = 7 Sie haben nach 5 Versuchen gewonnen!

28 // Rolls two dice until a sum of 7 is reached. import java.util.*; Lösung public class Dice { public static void main(string[] args) { Random rand = new Random(); int tries = 0; int sum = 0; while (sum!= 7) { } // roll the dice once int roll1 = rand.nextint(6) + 1; int roll2 = rand.nextint(6) + 1; sum = roll1 + roll2; System.out.println(roll1 + " + " + roll2 + " = " + sum); tries++; } } System.out.println("Sie haben nach " + tries + " Versuchen gewonnen!");

29 // Rolls two dice until a sum of 7 is reached. import java.util.*; do/while Lösung public class Dice { public static void main(string[] args) { Random rand = new Random(); int tries = 0; int sum; do { int roll1 = rand.nextint(6) + 1; int roll2 = rand.nextint(6) + 1; sum = roll1 + roll2; // one roll System.out.println(roll1 + " + " + roll2 + " = " + sum); tries++; } while (sum!= 7); } } System.out.println("Sie haben nach " + tries + " Versuchen gewonnen!");

30 3.5 (Mehr über) Funktionen 45

31 Beispiel aus den Uebungen Sie erinnern sich (vielleicht): public static void main (String[] args) { int f = 0; int g = 1; for (int i= 0; i < 15; i++ ) { System.out.print(" " + f); f = f + g; g = f - g; } System.out.println(); } 46

32 Output:

33 f = 0; g = 0; loop { f_new = f + g; g_new = f_new g; f = f_new; g = g_new; } f_1 = f _0 + g_0; g_1 = f_1 g_0; f_2 = f _1 + g_1; g_2 = f_2 g_1; 48

34 f = 0; g = 1; loop { f_new = f + g; g_new = f_new g; f = f_new; g = g_new; } f_1 = f _0 + g_0; g_1 = f_1 g_0; f_2 = f _1 + f_1 g_0; g_2 = f_2 (f_1 g_0); f_3 = f _2 + g_2; g_3 = f_3 g_2; 49

35 f = 0; g = 1; loop { f_new = f + g; g_new = f_new g; f = f_new; g = g_new; } f_1 = f _0 + g_0; g_1 = f_1 g_0; f_2 = f _1 + f_1 g_0; g_2 = f_2 (f_1 g_0); f_3 = f _2 + f_2 (f_1 g_0); g_3 = f_3 (f_2 (f_1 g_0)); 50

36 f = 0; g = 1; loop { f_new = f + g; g_new = f_new g; f = f_new; g = g_new; } f_1 = f _0 + g_0; // 1 g_1 = f_1 g_0; // 0 f_2 = f _1 + f_1 g_0; g_2 = f_2 (f_1 g_0); f_3 = f _2 + f_2 (f_1 g_0); g_3 = f_3 (f_2 (f_1 g_0)); 51

37 f = 0; g = 1; loop { f_new = f + g; g_new = f_new g; f = f_new; g = g_new; } f_1 = f _0 + g_0; // 1 g_1 = f_1 g_0; // 0 f_2 = f _1 + 0; g_2 = f_2 0; // f_1 f_3 = f _2 + f_2 0; g_3 = f_3 (f_2 0); 52

38 f = 0; g = 1; loop { f_new = f + g; g_new = f_new g; f = f_new; g = g_new; } f_1 = f _0 + g_0; // 1 g_1 = f_1 g_0; // 0 f_2 = f _1 + 0; g_2 = f_2 0; // f_1 f_3 = f _2 + f_1; g_3 = f_3 (f_2 0); 53

39 f = 0; g = 1; loop { f_new = f + g; g_new = f_new g; f = f_new; g = g_new; } f_1 = f _0 + g_0; // 1 g_1 = f_1 g_0; // 0 f_2 = f _1 + 0; g_2 = f_2 0; // f_1 f_3 = f _2 + f_1; g_3 = f_3 (f_2 0); f_4 = f_3 + g_3 54

40 f = 0; g = 1; loop { f_new = f + g; g_new = f_new g; f = f_new; g = g_new; } f_1 = f _0 + g_0; // 1 g_1 = f_1 g_0; // 0 f_2 = f _1 + 0; g_2 = f_2 0; // f_1 f_3 = f _2 + f_1; g_3 = f_3 (f_2 0); f_4 = f_3 + f_3 (f_2 0); 55

41 f = 0; g = 1; loop { f_new = f + g; g_new = f_new g; f = f_new; g = g_new; } f_1 = f _0 + g_0; // 1 g_1 = f_1 g_0; // 0 f_2 = f _1 + 0; g_2 = f_2 0; // f_1 f_3 = f _2 + f_1; g_3 = f_3 (f_2 0); f_4 = f_3 + f _2 + f_1 (f_2 0); 56

42 f = 0; g = 1; loop { f_new = f + g; g_new = f_new g; f = f_new; g = g_new; } f_1 = f _0 + g_0; // 1 g_1 = f_1 g_0; // 0 f_2 = f _1 + 0; g_2 = f_2 0; // f_1 f_3 = f _2 + f_1; g_3 = f_3 (f_2 0); f_4 = f_3 + f _2 + f_1 f_1; 57

43 f = 0; g = 1; loop { f_new = f + g; g_new = f_new g; f = f_new; g = g_new; } f_1 = f _0 + g_0; // 1 g_1 = f_1 g_0; // 0 f_2 = f _1 + 0; g_2 = f_2 0; // f_1 f_3 = f _2 + f_1; g_3 = f_3 (f_2 0); f_4 = f_3 + f _2; 58

44 Ein anderes Programm public static void main (String[] args) { } int f = 0; for (int i = 2; i < 15; i++ ) { System.out.print(f + " "); f = fct(i-1) + fct(i-2); } System.out.println(); 60

45 Ein anderes Programm public static int fct (int arg) { if (arg==0) { return 0; } else if (arg == 1) { return 1; } else { return (fct(arg-1) + fct(arg-2)); } } 61

46 In Zeitlupe :: 0 :: level = 0 arg = 1 level = 0 arg = 1 return = 1 level = 0 arg = 0 level = 0 arg = 0 return = 0 :: 1 :: level = 0 arg = 2 level = 1 arg = 1 level = 1 arg = 1 return = 1 level = 1 arg = 0 level = 1 arg = 0 return = 0 level = 0 arg = 2 return = 1 level = 0 arg = 1 level = 0 arg = 1 return = 1 :: 2 :: level = 0 arg = 3 level = 1 arg = 2 level = 2 arg = 1 level = 2 arg = 1 return = 1 level = 2 arg = 0 level = 2 arg = 0 return = 0 level = 1 arg = 2 return = 1 level = 1 arg = 1 level = 1 arg = 1 return = 1 level = 0 arg = 3 return = 2 level = 0 arg = 2 level = 1 arg = 1 level = 1 arg = 1 return = 1 level = 1 arg = 0 level = 1 arg = 0 return = 0 level = 0 arg = 2 return = 1 :: 3 :: level = 0 arg = 4 level = 0 arg = 4 return = 3 level = 0 arg = 3 level = 0 arg = 3 return = 2 :: 5 :: 63

47 Mit Ausgabe von Informationen zum Fortschritt public static int fct (int level, int arg) { int x; for (int j=0; j<level; j++) [ System.out.print(" ");} System.out.println("level = " + level + " arg = " + arg); if (arg==0) { x = 0; } else if (arg == 1) { x = 1; } else { x = fct(level+1, arg-1) + fct(level+1, arg-2); } } for (int j=0; j<level; j++) { System.out.print(" ");} System.out.println("l = " + level + " a.. = " + arg + " r = " + x); return x; 64

48 Mit Ausgabe von Informationen zum Fortschritt public static void main (String[] args) { } int f = 0; for (int i = 2; i < 15; i++ ) { System.out.println(" :: " + f + " ::"); f = fct(0, i-1) + fct(0, i-2); } System.out.println(); 65

49 Analyse Problem: berechne Reihe Gegeben durch for Schleife Lösung: saubere Formulierung der Reihe f i = f i-1 + f i-2 Berechnung von f i aus f i-1 und f i-2 Direkte Umsetzung in (rekursives) Programm (direkte) Rekursion: Eine Methode ruft sich selber auf Es muss (mindestens) eine Alternative geben, die nicht wieder die Methode aufruft 66

50 Analyse Lösung hat 2 Teile Die Methode fct ruft sich selber auf (Rekursion) Direkt return (fct(arg-1) + fct(arg-2)); Es muss (mindestens) eine Alternative geben, die nicht wieder die Methode aufruft (Basis) Hier zwei Fälle die unterschieden werden if (arg==0) { return 0; } else if (arg == 1) { return 1; } 67

JAVA - Zufallszahlen

JAVA - Zufallszahlen Übungen Informatik I JAVA - http://www.fbi-lkt.fh-karlsruhe.de/lab/info01/tutorial Übungen Informatik 1 1 5. JAVA werden beim Programmieren erstaunlich oft gebraucht: Simulationen Spiele Aufbau von Testszenarien...

Mehr

JAVA - Methoden - Rekursion

JAVA - Methoden - Rekursion Übungen Informatik I JAVA - Methoden - Rekursion http://www.fbi-lkt.fh-karlsruhe.de/lab/info01/tutorial Übungen Informatik 1 1 Methoden Methoden sind eine Zusammenfassung von Deklarationen und Anweisungen

Mehr

JAVA - Methoden

JAVA - Methoden Übungen Informatik I JAVA - http://www.fbi-lkt.fh-karlsruhe.de/lab/info01/tutorial Übungen Informatik 1 Folie 1 sind eine Zusammenfassung von Deklarationen und Anweisungen haben einen Namen und können

Mehr

CoMa 04. Java II. Paul Boeck. 7. Mai Humboldt Universität zu Berlin Institut für Mathematik. Paul Boeck CoMa 04 7.

CoMa 04. Java II. Paul Boeck. 7. Mai Humboldt Universität zu Berlin Institut für Mathematik. Paul Boeck CoMa 04 7. CoMa 04 Java II Paul Boeck Humboldt Universität zu Berlin Institut für Mathematik 7. Mai 2013 Paul Boeck CoMa 04 7. Mai 2013 1 / 13 Verzweigungen Wenn-Dann Beziehungen if (BEDINGUNG) { else if (BEDINGUNG2)

Mehr

Einführung in die Programmierung

Einführung in die Programmierung 252-0027 Einführung in die Programmierung 2.5 if -Anweisungen 2.6 Nochmals Schleifen: while Loops 2.Y Output Thomas R. Gross Department Informatik ETH Zürich Uebersicht 2.2 Typen und Variable Deklaration

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

Klassenvariablen, Klassenmethoden

Klassenvariablen, Klassenmethoden Einstieg in die Informatik mit Java, Vorlesung vom 11.12.07 Übersicht 1 Klassenmethoden 2 Besonderheiten von Klassenmethoden 3 Aufruf einer Klassenmethode 4 Hauptprogrammparameter 5 Rekursion Klassenmethoden

Mehr

Methoden und Wrapperklassen

Methoden und Wrapperklassen Methoden und Wrapperklassen CoMa-Übung IV TU Berlin 06.11.2012 CoMa-Übung IV (TU Berlin) Methoden und Wrapperklassen 06.11.2012 1 / 24 Themen der Übung 1 Methoden 2 Wrapper-Klassen CoMa-Übung IV (TU Berlin)

Mehr

Schwerpunkte. 10. Felder (Arrays) Grundprinzip von Arrays. Klassifikation von Typen in Programmiersprachen

Schwerpunkte. 10. Felder (Arrays) Grundprinzip von Arrays. Klassifikation von Typen in Programmiersprachen Schwerpunkte 10. Felder (Arrays) Teil 1 Java-Beispiele: Echo.java Primzahlen.java Monate.java Klassifikation von Typen in Programmiersprachen Array: einziger strukturierter Typ in Java Deklaration, Erzeugung

Mehr

Martin Unold INFORMATIK. Geoinformatik und Vermessung

Martin Unold INFORMATIK. Geoinformatik und Vermessung Wiederholung So sieht ein leeres Java-Programm aus public class Programmname { public static void main (String[] args) { // Hier stehen die Anweisungen } } Anweisungen mit Variablen Wiederholung Deklaration

Mehr

Programmieren in Java

Programmieren in Java Programmieren in Java Vorlesung 02: Methoden Prof. Dr. Peter Thiemann Albert-Ludwigs-Universität Freiburg, Germany SS 2017 Peter Thiemann (Univ. Freiburg) Programmieren in Java JAVA 1 / 17 Inhalt Scanner

Mehr

Praktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2017/18. Vorbereitende Aufgaben

Praktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2017/18. Vorbereitende Aufgaben Praktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2017/18 Fakultät für Informatik Lehrstuhl 14 Lars Hildebrand Übungsblatt 7 Besprechung: 4. 8.12.2017 (KW 49) Vorbereitende

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

Elementare Konzepte von

Elementare Konzepte von Elementare Konzepte von Programmiersprachen Teil 2: Anweisungen (Statements) Kapitel 6.3 bis 6.7 in Küchlin/Weber: Einführung in die Informatik Anweisungen (statements) in Java Berechnung (expression statement)

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 18 Einstieg in die Informatik mit Java Klassenvariablen, Klassenmethoden Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 18 1 Klassenmethoden 2 Besonderheiten von Klassenmethoden

Mehr

Wie entwerfe ich ein Programm?

Wie entwerfe ich ein Programm? Wie entwerfe ich ein Programm? Welche Objekte brauche ich? Flussdiagramme für Programmablauf Vorcode Testcode Hauptcode Wir spielen Lotto! Borchers: Programmierung für Alle (Java), WS 06/07 Kapitel 5 +

Mehr

Java 8. Elmar Fuchs Grundlagen Programmierung. 1. Ausgabe, Oktober 2014 JAV8

Java 8. Elmar Fuchs Grundlagen Programmierung. 1. Ausgabe, Oktober 2014 JAV8 Java 8 Elmar Fuchs Grundlagen Programmierung 1. Ausgabe, Oktober 2014 JAV8 5 Java 8 - Grundlagen Programmierung 5 Kontrollstrukturen In diesem Kapitel erfahren Sie wie Sie die Ausführung von von Bedingungen

Mehr

Einführung in die Programmierung I. 1.0 EBNF 2.0 Einfache Java Programme. Thomas R. Gross. Department Informatik ETH Zürich

Einführung in die Programmierung I. 1.0 EBNF 2.0 Einfache Java Programme. Thomas R. Gross. Department Informatik ETH Zürich 252-0027 Einführung in die Programmierung I 1.0 EBNF 2.0 Einfache Java Programme Thomas R. Gross Department Informatik ETH Zürich Graphische Darstellung von EBNF Regeln Syntax Graph: graphische Darstellung

Mehr

Anweisungen zur Ablaufsteuerung

Anweisungen zur Ablaufsteuerung Anweisungen zur Ablaufsteuerung if-else switch while do-while for Ausdrücke Ein Ausdruck ist eine Folge von Variablen, Operatoren und Methodenaufrufen, der zu einem einzelnen Wert ausgewertet wird. Operanden

Mehr

Übungslösungen. 1. Übung

Übungslösungen. 1. Übung Übungslösungen 1. Übung import cib.lehre.baustelle.go.*; import cib.lehre.baustelle.po.baugeraet.*; import cib.lehre.baustelle.po.einrichtungselemente.*; import java.util.*; public class Klasse1 { public

Mehr

Präzedenz von Operatoren

Präzedenz von Operatoren Präzedenz von Operatoren SWE-30 Die Präzedenz von Operatoren bestimmt die Struktur von Ausdrücken. Ein Operator höherer Präzedenz bindet die Operanden stärker als ein Operator geringerer Präzedenz. Mit

Mehr

12 Abstrakte Klassen, finale Klassen und Interfaces

12 Abstrakte Klassen, finale Klassen und Interfaces 12 Abstrakte Klassen, finale Klassen und Interfaces Eine abstrakte Objekt-Methode ist eine Methode, für die keine Implementierung bereit gestellt wird. Eine Klasse, die abstrakte Objekt-Methoden enthält,

Mehr

Java Übung. Übung 3. Werner Gaulke. 2. Mai Universität Duisburg-Essen Kommedia, Übung EinPro SS06, Einführung in Java - Übung.

Java Übung. Übung 3. Werner Gaulke. 2. Mai Universität Duisburg-Essen Kommedia, Übung EinPro SS06, Einführung in Java - Übung. Java Übung Übung 3 Universität Duisburg-Essen Kommedia, Übung EinPro SS06, 2. Mai 2006 (UniDUE) 2. Mai 2006 1 / 17 Aufgabe 1 Umwandeln von do while in for Schleife. Listing 1: aufgabe3 1.java 1 public

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

Test zu Grundlagen der Programmierung Leitung: Michael Hahsler. 21. Juni 2004

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

Mehr

Grundlagen der Informatik Ergänzungen WS 2007/2008 Prof. Dr. Rainer Lütticke

Grundlagen der Informatik Ergänzungen WS 2007/2008 Prof. Dr. Rainer Lütticke Grundlagen der Informatik Ergänzungen WS 2007/2008 Prof. Dr. Rainer Lütticke 1 Links Stellenwertsysteme mit Links zu Zahlensysteme: http://de.wikipedia.org/wiki/stellenwertsystem ASCII-Code: http://de.wikipedia.org/wiki/ascii

Mehr

Themen der Übung. Methoden und Wrapperklassen. Vorteile von Methoden. Methoden. Grundlagen

Themen der Übung. Methoden und Wrapperklassen. Vorteile von Methoden. Methoden. Grundlagen Themen der Übung 1 Organisatorisches Methoden und Wrapperklassen 2 Methoden 3 Wrapper-Klassen CoMa-Übung IV TU Berlin 07.11.2012 Organisatorisches: Im Pool nur auf die Abgabeliste setzen, wenn ihr wirklich

Mehr

Javakurs FSS Lehrstuhl Stuckenschmidt. Tag 1 - Variablen und Kontrollstrukturen

Javakurs FSS Lehrstuhl Stuckenschmidt. Tag 1 - Variablen und Kontrollstrukturen Javakurs FSS 2012 Lehrstuhl Stuckenschmidt Tag 1 - Variablen und Kontrollstrukturen main Methode Startpunkt jeder Java Anwendung String[] args ist ein Array aus Parametern, die beim Aufruf über die Kommandozeile

Mehr

1. Erste Schritte 2. Einfache Datentypen 3. Anweisungen und Kontrollstrukturen 4. Verifikation 5. Reihungen (Arrays)

1. Erste Schritte 2. Einfache Datentypen 3. Anweisungen und Kontrollstrukturen 4. Verifikation 5. Reihungen (Arrays) 1. Erste Schritte 2. Einfache Datentypen 3. Anweisungen und Kontrollstrukturen 4. Verifikation 5. Reihungen (Arrays) II.1.3. Anweisungen und Kontrollstrukturen - 1 - Anweisung Anweisung Zuweisung Methodenaufruf

Mehr

Aufgabenblatt 5. Kompetenzstufe 1. Allgemeine Informationen zum Aufgabenblatt:

Aufgabenblatt 5. Kompetenzstufe 1. Allgemeine Informationen zum Aufgabenblatt: Aufgabenblatt 5 Kompetenzstufe 1 Allgemeine Informationen zum Aufgabenblatt: Die Abgabe erfolgt in TUWEL. Bitte laden Sie Ihr IntelliJ-Projekt bis spätestens Freitag, 05.01.2018 13:00 Uhr in TUWEL hoch.

Mehr

Modellierung und Programmierung 1

Modellierung und Programmierung 1 Modellierung und Programmierung 1 Prof. Dr. Sonja Prohaska Computational EvoDevo Group Institut für Informatik Universität Leipzig 4. November 2015 Administratives Zur Abgabe von Übungsaufgaben Nein, wir

Mehr

System.out.println("TEXT");

System.out.println(TEXT); Inhaltsübersicht - Erstes Beispiel - Datentypen - Ausdrücke und Operatoren - Schleifen / Bedinungen - Struktogramme - Grundgerüst eines Programms in JAVA - Einlesen von Daten Erstes Beispiel public class

Mehr

7.0 Arbeiten mit Objekten und Klassen

7.0 Arbeiten mit Objekten und Klassen 252-0027 Einführung in die Programmierung I 7.0 Arbeiten mit Objekten und Klassen Thomas R. Gross Department Informatik ETH Zürich Copyright (c) Pearson 2013. and Thomas Gross 2016 All rights reserved.

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

Wiederholung Wozu Methoden? Methoden Schreiben Methoden Benutzen Rekursion?! Methoden. Javakurs 2012, 3. Vorlesung

Wiederholung Wozu Methoden? Methoden Schreiben Methoden Benutzen Rekursion?! Methoden. Javakurs 2012, 3. Vorlesung Wiederholung Wozu? Schreiben Benutzen Rekursion?! Javakurs 2012, 3. Vorlesung maggyrz@freitagsrunde.org 5. März 2013 Wiederholung Wozu? Schreiben Benutzen Rekursion?! 1 Wiederholung 2 Wozu? 3 Schreiben

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

Einführung in die Programmierung für NF. Zuweisungen, main- Methode und Kommentare

Einführung in die Programmierung für NF. Zuweisungen, main- Methode und Kommentare Einführung in die Programmierung für NF Zuweisungen, main- Methode und Kommentare Wiederholung: Deklara@on lokaler Variablen Eine Deklara'on einer lokalen Variablen (Declara'on) hat die Form Type VarName

Mehr

Einführung in die Programmierung WS 2009/10. Übungsblatt 7: Imperative Programmierung, Parameterübergabe

Einführung in die Programmierung WS 2009/10. Übungsblatt 7: Imperative Programmierung, Parameterübergabe Ludwig-Maximilians-Universität München München, 04.12.2009 Institut für Informatik Prof. Dr. Christian Böhm Annahita Oswald, Bianca Wackersreuther Einführung in die Programmierung WS 2009/10 Übungsblatt

Mehr

7. Einführung in C++ Programmieren / Algorithmen und Datenstrukturen 1 Prof. Dr. Bernhard Humm FB Informatik, Hochschule Darmstadt

7. Einführung in C++ Programmieren / Algorithmen und Datenstrukturen 1 Prof. Dr. Bernhard Humm FB Informatik, Hochschule Darmstadt 7. Einführung in C++ Programmieren / Algorithmen und Datenstrukturen 1 Prof. Dr. Bernhard Humm FB Informatik, Hochschule Darmstadt 1 Kontrollfragen Rekursion Was bedeutet Rekursion? Geben Sie Beispiele

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 27 Einstieg in die Informatik mit Java Methoden / Funktionen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 27 1 Überblick 2 Zweck von Methoden 3 Methodendefinition

Mehr

Übersetzen des Quelltexts in ausführbaren Maschinen-Code Translation of source code into executable machine code

Übersetzen des Quelltexts in ausführbaren Maschinen-Code Translation of source code into executable machine code Informatik II D-BAUG Self-Assessment, 2. März 2017 Lösung Name, Vorname:............................................................. Legi-Nummer:.............................................................

Mehr

pue13 January 28, 2017

pue13 January 28, 2017 pue13 January 28, 2017 1 Aufgabe 1 (Klammern und Anweisungsblöcke) Wie Sie in der Vorlesung gelernt haben, werden Anweisungsblöcke in Java nicht durch Einrückung, sondern mithilfe von geschweiften Klammern

Mehr

Programmierkurs Java

Programmierkurs Java Programmierkurs Java Java Generics und Java API (1/2) Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck https://www.itm.uni-luebeck.de/people/fischer Datenstrukturen In vielen Sprachen

Mehr

Algorithmen und Programmierung II

Algorithmen und Programmierung II Algorithmen und Programmierung II Vererbung Prof. Dr. Margarita Esponda SS 2012 1 Imperative Grundbestandteile Parameterübergabe String-Klasse Array-Klasse Konzepte objektorientierter Programmierung Vererbung

Mehr

Aufgabe 1.90: Ein Geschäft gibt ihren Kunden unterschiedliche Rabatte. Schreiben ein Programm, das folgende Rabattklassen vorsieht:

Aufgabe 1.90: Ein Geschäft gibt ihren Kunden unterschiedliche Rabatte. Schreiben ein Programm, das folgende Rabattklassen vorsieht: Aufgabe 1.90: Ein Geschäft gibt ihren Kunden unterschiedliche Rabatte. Schreiben ein Programm, das folgende Rabattklassen vorsieht: o Klasse 0: kein Rabatt o Klasse 1: 4,5 % Rabatt o Klasse 2: 8,75% Rabatt

Mehr

Methoden und Funktionen

Methoden und Funktionen Programmieren mit Java Modul 4 Methoden und Funktionen Theorieteil Inhaltsverzeichnis 1 Modulübersicht 3 2 Methoden 3 2.1 Methoden ohne Rückgabewert (Prozeduren)................ 3 2.2 Methoden mit Rückgabewert

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

Einführung in die Programmierung I. 2.3 Schleifen (Loops) Thomas R. Gross. Department Informatik ETH Zürich

Einführung in die Programmierung I. 2.3 Schleifen (Loops) Thomas R. Gross. Department Informatik ETH Zürich 252-0027 Einführung in die Programmierung I 2.3 Schleifen (Loops) Thomas R. Gross Department Informatik ETH Zürich Uebersicht 2.2 Typen und Variable Deklaration von Variablen 2.3 Schleifen 2 Variable Beispiel

Mehr

Arbeitsblätter für die Lehrveranstaltung OOP JAVA 1

Arbeitsblätter für die Lehrveranstaltung OOP JAVA 1 Fachhochschule Stralsund Fachbereich Maschinenbau Lehrgebiet Informatik Prof. Dr.-Ing. Ch.Wahmkow Arbeitsblätter für die Lehrveranstaltung OOP I. Aufbau eines Java-Programmes JAVA 1 Escape-Sequenzen zur

Mehr

Prof. H. Herbstreith 10. Juli Uhr bis 11:00 Uhr Leistungsnachweis Informatik 1 SS 2001

Prof. H. Herbstreith 10. Juli Uhr bis 11:00 Uhr Leistungsnachweis Informatik 1 SS 2001 Prof. H. Herbstreith 10. Juli 2001 9.30 Uhr bis 11:00 Uhr Leistungsnachweis Informatik 1 SS 2001 Aufgabe 1: Vervollständigen Sie folgende Sätze und schreiben die Ergänzungen auf das Prüfungspapier und

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? weit verbreitet einfach und (relativ) sicher keine Pointer (?) keine gotos kein Präprozessor keine globalen Variablen garbage collection objekt-orientiert

Mehr

Prozeduren vs. Funktionen

Prozeduren vs. Funktionen Prozeduren vs. Funktionen Mit der Formalisierung wird auch der Unterschied zwischen Prozeduren und Funktionen noch einmal klar. Der Aufruf beider Varianten bewirkt zunächst das Gleiche: die Eingabevariablen

Mehr

Grunddatentypen, Ausdrücke und Variablen

Grunddatentypen, Ausdrücke und Variablen Grunddatentypen, Ausdrücke und Variablen Zentralübung zur Vorlesung Einführung in die Informatik http://www.pst.ifi.lmu.de/lehre/wise-11-12/infoeinf WS11/12 Vorlesung heute: Grunddatentypen Ausdrücke Variablen

Mehr

Einführung in die Programmierung I. 2.0 Einfache Java Programme. Thomas R. Gross. Department Informatik ETH Zürich

Einführung in die Programmierung I. 2.0 Einfache Java Programme. Thomas R. Gross. Department Informatik ETH Zürich 252-0027 Einführung in die Programmierung I 2.0 Einfache Java Programme Thomas R. Gross Department Informatik ETH Zürich Uebersicht 2.0 Einfache Java Programme Struktur Namen Output 2 Graphische Darstellung

Mehr

2. Unterprogramme und Methoden

2. Unterprogramme und Methoden 2. Unterprogramme und Methoden Durch Methoden wird ausführbarer Code unter einem Namen zusammengefasst. Dieser Code kann unter Verwendung von sogenannten Parametern formuliert sein, denen später beim Aufruf

Mehr

Introduction to Python. Introduction. First Steps in Python. pseudo random numbers. May 2016

Introduction to Python. Introduction. First Steps in Python. pseudo random numbers. May 2016 to to May 2016 to What is Programming? All computers are stupid. All computers are deterministic. You have to tell the computer what to do. You can tell the computer in any (programming) language) you

Mehr

Programmieren I. Methoden-Spezial Heusch --- Ratz 6.1, Institut für Angewandte Informatik

Programmieren I. Methoden-Spezial Heusch --- Ratz 6.1, Institut für Angewandte Informatik Programmieren I Methoden-Spezial Heusch --- Ratz 6.1, 6.2 KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft www.kit.edu Parameterübergabe bei primitivem Datentypen (Wertkopie) public class MethodParameters

Mehr

II. Grundlagen der Programmierung. Beispiel: Merge Sort. Beispiel: Merge Sort (Forts. ) Beispiel: Merge Sort (Forts. )

II. Grundlagen der Programmierung. Beispiel: Merge Sort. Beispiel: Merge Sort (Forts. ) Beispiel: Merge Sort (Forts. ) Technische Informatik für Ingenieure (TIfI) WS 2006/2007, Vorlesung 9 II. Grundlagen der Programmierung Ekkart Kindler Funktionen und Prozeduren Rekursion Datenstrukturen Merge S ( split, s, merge ) Beispiel:

Mehr

Einführung in die Programmierung für NF. Zuweisungen, main- Methode und Kommentare

Einführung in die Programmierung für NF. Zuweisungen, main- Methode und Kommentare Einführung in die Programmierung für NF Zuweisungen, main- Methode und Kommentare Wiederholung: Deklara@on lokaler Variablen Eine Deklara'on einer lokalen Variablen (Declara'on) hat die Form Type VarName

Mehr

Programmieren I. Methoden-Special Heusch --- Ratz 6.1, Institut für Angewandte Informatik

Programmieren I. Methoden-Special Heusch --- Ratz 6.1, Institut für Angewandte Informatik Programmieren I Methoden-Special Heusch --- Ratz 6.1, 6.2 KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft www.kit.edu Parameterübergabe: Wertkopie -By- public class MethodParameters { public

Mehr

Heap vs. Stack vs. statisch. 6 Speicherorganisation. Beispiel Statische Variablen. Statische Variablen

Heap vs. Stack vs. statisch. 6 Speicherorganisation. Beispiel Statische Variablen. Statische Variablen Heap vs. vs. statisch Der Speicher des Programms ist in verschiedene Speicherbereiche untergliedert Speicherbereiche, die den eigentlichen Programmcode und den Code der Laufzeitbibliothek enthalten; einen

Mehr

Ein String ist in Java eigentlich eine Klasse, wir können ihn aber zunächst als Datentyp betrachten, der zur Speicherung von Zeichenketten dient.

Ein String ist in Java eigentlich eine Klasse, wir können ihn aber zunächst als Datentyp betrachten, der zur Speicherung von Zeichenketten dient. Strings Ein String ist in Java eigentlich eine Klasse, wir können ihn aber zunächst als Datentyp betrachten, der zur Speicherung von Zeichenketten dient. Beispiel: String zeile = "Cusanus-Gymnasium Wittlich";

Mehr

Vorbereitende Aufgaben

Vorbereitende Aufgaben Praktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2017/18 Fakultät für Informatik Lehrstuhl 14 Lars Hildebrand Übungsblatt 4 Besprechung: 13. 17.11.2017 (KW 46) Vorbereitende

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

Tag 5. Repetitorium Informatik (Java) Dozent: Marius Kamp Lehrstuhl für Informatik 2 (Programmiersysteme)

Tag 5. Repetitorium Informatik (Java) Dozent: Marius Kamp Lehrstuhl für Informatik 2 (Programmiersysteme) Tag 5 Repetitorium Informatik (Java) Dozent: Marius Kamp Lehrstuhl für Informatik 2 (Programmiersysteme) Friedrich-Alexander-Universität Erlangen-Nürnberg Wintersemester 2017/2018 Übersicht Methoden Deklaration

Mehr

Interaktive Programme mit Scanner

Interaktive Programme mit Scanner 2.X Input 191 Interaktive Programme mit Scanner 193 Input und System.in Interaktives Programm: Liest Input von der Konsole ( console ). Während das Programm ausgeführt wird fragt das Programm den Benutzer

Mehr

Einführung in die Programmierung WS 2009/10. Übungsblatt 5: Typen, Variablen und einfache Methoden in Java

Einführung in die Programmierung WS 2009/10. Übungsblatt 5: Typen, Variablen und einfache Methoden in Java Ludwig-Maximilians-Universität München München, 20.11.2009 Institut für Informatik Prof. Dr. Christian Böhm Annahita Oswald, Bianca Wackersreuther Einführung in die Programmierung WS 2009/10 Übungsblatt

Mehr

Implementieren von Klassen

Implementieren von Klassen Implementieren von Klassen Felder, Methoden, Konstanten Dr. Beatrice Amrhein Überblick Felder/Mitglieder (Field, Member, Member-Variable) o Modifizierer Konstanten Methoden o Modifizierer 2 Felder und

Mehr

Heap vs. Stack vs. statisch. 6 Speicherorganisation. Beispiel Statische Variablen. Statische Variablen

Heap vs. Stack vs. statisch. 6 Speicherorganisation. Beispiel Statische Variablen. Statische Variablen Heap vs. vs. statisch Der Speicher des Programms ist in verschiedene Speicherbereiche untergliedert Speicherbereiche, die den eigentlichen Programmcode und den Code der Laufzeitbibliothek enthalten; einen

Mehr

Einführung in das Programmieren Probeklausur Lösungen

Einführung in das Programmieren Probeklausur Lösungen Einführung in das Programmieren Probeklausur Lösungen Frederik Kanning 01.07.2013 Aufgabe 1 b/c) void definiert Methode ohne Rückgabewert return beendet aktuellen Methodenaufruf wenn Rückgabetyp nicht

Mehr

Algorithmen und Datenstrukturen II

Algorithmen und Datenstrukturen II Algorithmen und Datenstrukturen II in JAVA D. Rösner Institut für Wissens- und Sprachverarbeitung Fakultät für Informatik Otto-von-Guericke Universität Magdeburg Sommer 2009, 31. März 2009, c 2009 D.Rösner

Mehr

Übungsstunde 3. Einführung in die Programmierung

Übungsstunde 3. Einführung in die Programmierung Übungsstunde 3 Einführung in die Programmierung Nachbesprechung Übung 3 Aufgabe 1: Folgen und Reihen import java.util.scanner; public class Reihe { public static void main(string[] args) { Scanner scanner

Mehr

PROGRAMMIERUNG IN JAVA

PROGRAMMIERUNG IN JAVA PROGRAMMIERUNG IN JAVA ZUWEISUNGEN (1) Deklaration nennt man die Ankündigung eines Platzhalters (Variablen) und Initialisierung die erste Wertvergabe bzw. die konkrete Erstellung des Platzhalters. In einem

Mehr

Klassen und Objekte. Klassen sind Vorlagen für Objekte. Objekte haben. Attribute. Konstruktoren. Methoden. Merkblatt

Klassen und Objekte. Klassen sind Vorlagen für Objekte. Objekte haben. Attribute. Konstruktoren. Methoden. Merkblatt Klassen und Objekte Klassen sind Vorlagen für Objekte. Objekte haben Attribute Konstruktoren Methoden Aus einer Klasse kann man beliebig viele Objekte herstellen. Attribute bestimmen die Eigenschaften

Mehr

Selbststudium OOP6 & ALG Programmieren 1 - H1103 Felix Rohrer

Selbststudium OOP6 & ALG Programmieren 1 - H1103 Felix Rohrer Kapitel 5.2 1. zu bearbeitende Aufgabe: 5.1 5.1: done 2. Auf Seite 133 wird in der Methode start()ein while-loop verwendet. Kreieren Sie ein Code-Fragment mit derselben Funktionalität unter Verwendung

Mehr

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

Rekursion. Annabelle Klarl. Einführung in die Informatik Programmierung und Softwareentwicklung Rekursion Annabelle Klarl Zentralübung zur Vorlesung Einführung in die Informatik: http://www.pst.ifi.lmu.de/lehre/wise-12-13/infoeinf WS12/13 Aufgabe 1: Potenzfunktion Schreiben Sie eine Methode, die

Mehr

Praktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2017/18. Vorbereitende Aufgaben

Praktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2017/18. Vorbereitende Aufgaben Praktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2017/18 Fakultät für Informatik Lehrstuhl 14 Lars Hildebrand Übungsblatt 6 Besprechung: 27.11. 1.12.2017 (KW 48) Vorbereitende

Mehr

Objektorientierung II & die Java Klassenbibliothek. Kristian Bergmann und Arthur Lochstampfer

Objektorientierung II & die Java Klassenbibliothek. Kristian Bergmann und Arthur Lochstampfer Java Kurs Objektorientierung II & die Java Klassenbibliothek Kristian Bergmann und Arthur Lochstampfer Vergleich class Apfel { String farbe; int gewicht; String geerntetin; class Erdbeere { String farbe;

Mehr

Ausdrücke der Programmiersprache Java

Ausdrücke der Programmiersprache Java Ausdrücke der Programmiersprache Java Hamburg 1 Ablauf des Vortrags 01. Eigenschaften von Ausdrücken 02. Arithmetische Operatoren 03. Relationale Operatoren 04. Logische Operatoren 05. Bitweise Operatoren

Mehr

Selbststudium OOP7 & ALG2 Auftrag

Selbststudium OOP7 & ALG2 Auftrag Selbststudium OOP7 & ALG2 Auftrag Kapitel 5.6 1. zu bearbeitende Aufgaben: 5.24 bis 5.30 5.24: Return Method Set entryset() V get(object key) Set keyset() V put(k key, V value) void

Mehr

Grundzüge der Wirtschaftsinformatik WS 2002/03. Wiederholung Java. Programmierzyklus. Heiko Rossnagel Problem

Grundzüge der Wirtschaftsinformatik WS 2002/03. Wiederholung Java. Programmierzyklus. Heiko Rossnagel  Problem Grundzüge der Wirtschaftsinformatik WS 2002/03 Wiederholung Java Heiko Rossnagel www.m-lehrstuhl.de accelerate.com Grundzüge der Wirtschaftsinformatik WS 2002/03 1 Programmierzyklus Problem Formulierung

Mehr

Grundlagen der Programmierung Teil1 Einheit III Okt. 2010

Grundlagen der Programmierung Teil1 Einheit III Okt. 2010 Grundlagen der Programmierung Teil1 Einheit III - 22. Okt. 2010 GDP DDr. Karl D. Fritscher basierend auf der Vorlesung Grundlagen der Programmierung von DI Dr. Bernhard Pfeifer Einschub Bevor wir mit den

Mehr

Arrays. Gilbert Beyer und Annabelle Klarl. Einführung in die Informatik. Zentralübung zur Vorlesung Einführung in die Informatik

Arrays. Gilbert Beyer und Annabelle Klarl. Einführung in die Informatik. Zentralübung zur Vorlesung Einführung in die Informatik Arrays Zentralübung zur Vorlesung Einführung in die Informatik http://www.pst.ifi.lmu.de/lehre/wise-11-12/infoeinf WS11/12 Inhalte der heutigen Vorlesung: Arraytypen Speicherdarstellung von Arrays Auswertung

Mehr

Standardkonstrukte in Java

Standardkonstrukte in Java Robert Buchholz, Sven Schneider JavaKurs 2006 1. Tag Freitagsrunde / Tutoren 03. April 2006 Was lernen wir heute noch kennen? 1 Methoden Definition einer Methode Aufruf einer Methode 2 Datenstruktur Array

Mehr

Neben der Verwendung von Klassen ist Vererbung ein wichtiges Merkmal objektorientierter

Neben der Verwendung von Klassen ist Vererbung ein wichtiges Merkmal objektorientierter Kapitel 1 Der vierte Tag 1.1 Vererbung Neben der Verwendung von Klassen ist Vererbung ein wichtiges Merkmal objektorientierter Sprachen. Unter Vererbung versteht man die Möglichkeit, Eigenschaften vorhandener

Mehr

Programmiertechnik Methoden, Teil 2

Programmiertechnik Methoden, Teil 2 Programmiertechnik Methoden, Teil 2 Prof. Dr. Oliver Haase Oliver Haase Hochschule Konstanz 1 Rekursion Oliver Haase Hochschule Konstanz 2 Definition Was ist Rekursion? Allgemein: Rekursion ist die Definition

Mehr

Programmiervorkurs Einführung in Java Tag 1

Programmiervorkurs Einführung in Java Tag 1 Programmiervorkurs Einführung in Java Tag 1 Sebastian Glutsch SS 2018 namen Inhaltsübersicht Vorkurs Tag 1:,, en,, Einführung Tag 2: Boolesche Ausdrücke,, If-Abfragen, Switch-Case Tag 3: Arrays, (Do-)While-Schleife,

Mehr

JAVA - Methoden,... T.Bosse

JAVA - Methoden,... T.Bosse COMA JAVA -,... Anweisungblöcke Manche Blöcke werden mehrfach benötigt. Sauberer Code Java - /... //gabe double x=3.0; // Vorschrift double y=math.pow(x,); System.out.println("Ergebnis:"+y); //Rückgabe

Mehr

Javakurs für Anfänger

Javakurs für Anfänger Javakurs für Anfänger Einheit 04: Einführung in Kontrollstrukturen Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda 1. Teil: Einführung in Kontrollstrukturen 3 Grundstrukturen von

Mehr

Informatik 1 - Translation Studies in Information Technology. Musterlösung zum Aufgabenblatt der ersten Pflichtübung im Wintersemester 16/17

Informatik 1 - Translation Studies in Information Technology. Musterlösung zum Aufgabenblatt der ersten Pflichtübung im Wintersemester 16/17 Informatik 1 - Translation Studies in Information Technology INF1 TSIT MUSTERLÖSUNG: PFLICHTÜBUNG 1 Musterlösung zum Aufgabenblatt der ersten Pflichtübung im Wintersemester 16/17 Praktikum zur Vorlesung

Mehr

Java: Eine kurze Einführung an Beispielen

Java: Eine kurze Einführung an Beispielen Java: Eine kurze Einführung an Beispielen Quellcode, javac und die JVM Der Quellcode eines einfachen Java-Programms besteht aus einer Datei mit dem Suffix.java. In einer solchen Datei wird eine Klasse

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

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

Fundamentale Ideen der Informatik PH Weingarten Sommersemester 2014 Paul Libbrecht CC-BY. Vorlesung 3: Methoden, Scope

Fundamentale Ideen der Informatik PH Weingarten Sommersemester 2014 Paul Libbrecht CC-BY. Vorlesung 3: Methoden, Scope Fundamentale Ideen der Informatik PH Weingarten Sommersemester 2014 Paul Libbrecht CC-BY Vorlesung 3: Methoden, Scope Menü Erinnerung: Variablen, Objekte Methode Idee Klasse Kode-Sichtbarkeit Idee: Test,

Mehr

Informatik II Übung, Woche 10

Informatik II Übung, Woche 10 Giuseppe Accaputo 10. März, 2016 Plan für heute 1. Typumwandlung (Typecasts) 2. Ordnerstruktur für Übungen 3. Vorbesprechung Übung 3 4. Nachbesprechung Übung 2 (inkl. Live Programmierung) Informatik II

Mehr

6 Speicherorganisation

6 Speicherorganisation Der Speicher des Programms ist in verschiedene Speicherbereiche untergliedert Speicherbereiche, die den eigentlichen Programmcode und den Code der Laufzeitbibliothek enthalten; einen Speicherbereich für

Mehr

EINFÜHRUNG IN DIE PROGRAMMIERUNG

EINFÜHRUNG IN DIE PROGRAMMIERUNG EINFÜHRUNG IN DIE PROGRAMMIERUNG GRUNDLAGEN Tobias Witt!! 24.03.2014 ORGANISATORISCHES 09:00-10:30! Täglich Übungen zur Vertiefung! Laptop hier nicht erforderlich! Linux, OS X! Freitag: http://hhu-fscs.de/linux-install-party/

Mehr

Zentralübung Grundlagen der Programmierung

Zentralübung Grundlagen der Programmierung Zentralübung Grundlagen der Programmierung Bastian Cramer Standardbelegungen für Variablen lokale Variablen müssen initialisiert werden! Ansonsten gilt: 2 Aufgabe 1: while Schleife Quersumme einer beliebigen

Mehr

II.3.1 Rekursive Algorithmen - 1 -

II.3.1 Rekursive Algorithmen - 1 - 1. Grundelemente der Programmierung 2. Objekte, Klassen und Methoden 3. Rekursion und dynamische Datenstrukturen 4. Erweiterung von Klassen und fortgeschrittene Konzepte II.3.1 Rekursive Algorithmen -

Mehr