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

Größe: px
Ab Seite anzeigen:

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

Transkript

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

2 Uebersicht 2.2 Typen und Variable Deklaration von Variablen 2.3 Schleifen 2

3 Variable

4 Beispiel Lohnabrechnung Was ist an diesem Programm schlecht? public class Lohn{ public static void main(string[] args) { // Calculate net wages based on weekly hours worked // deduct AHV 4.2%, IV 0.7%, ALV 1.0%, 30 CHF/Stunde System.out.println("Hours worked:"); System.out.println( ); System.out.println("AHV:"); System.out.println(30*( ) *.042); System.out.println("IV:"); System.out.println(30*( ) *.007);...

5 Beispiel Lohnabrechnung... System.out.println("ALV:"); System.out.println(30*( ) *.01); System.out.println("Lohn:"); System.out.println(30*( ) ((30*( ) * *( ) * *( ) *.01) ); } //main } // Lohn

6 public class Lohn{ public static void main(string[] args) { // Calculate net wages based on weekly hours worke; deduct AHV 4.2%, IV 0.7%, ALV 1.0% System.out.println("Hours worked:"); System.out.println( ); System.out.println("AHV:"); System.out.println(30*( ) *.042); System.out.println("IV:"); System.out.println(30*( ) *.007); System.out.println("ALV:"); System.out.println(30*( ) *.01); } } System.out.println("Lohn:"); System.out.println(30*( ) ((30*( ) * (30*( ) * (30*( ) *.01) );

7 Der Ausdruck (Anzahl Stunden) ( ) wird wiederholt Abzüge werden mehrfach berechnet So viele println Anweisungen 7

8 Variable Variable ( variable ): Name der es erlaubt, auf einen gespeicherten Wert zuzugreifen Wert muss (irgendwo) vom Programm gespeichert werden In Speicherzelle(n) im Computer Aehnlich Schnellwahl (Telefon)

9 Variable Variable ( variable ): Name der es erlaubt, auf einen gespeicherten Wert zuzugreifen Wert muss (irgendwo) vom Programm gespeichert werden In Speicherzelle(n) im Computer Aehnlich Schnellwahl (Telefon)

10 Variable Wie man diese Wahlknöpfe benutzt: Konfiguration Einsatz Aehnlicher Ablauf für Variablen in einem Programm Deklaration - gibt Namen und Typ an Initialisierung - speichert einen Wert in der Variablen Gebrauch - in einem Ausdruck oder println Anweisung

11 Deklaration Deklaration einer Variablen: Reserviert Speicher für Werte Variable müssen deklariert sein bevor sie verwendet werden können. Syntax: type name; name ist ein Bezeichner ( identifier ) type ist der Typ int x; x double mygpa; mygpa

12 Zuweigungen ( Assignment ) Zuweisung: Eine Anweisung die einen Wert in einer Variable speichert. Der Wert kann ein Ausdruck sein, die Zuweisung speichert das Ergebnis Syntax: name = expression; int x; x = 3; double mygpa; mygpa = ; x 3 mygpa 3.25

13 Gebrauch von Variablen Nachdem eine Variable einen Wert erhalten hat, kann die Variable in Ausdrücken verwendet werden: int x; x = 3; System.out.println("x is " + x); // x is 3 System.out.println(5 * x - 1); // 5 * 3-1 Wiederholte Zuweisungen sind erlaubt: int x; x = 3; System.out.println(x + " here"); // 3 here x = 4 + 7; System.out.println("now x is " + x); // now x is 11 x 11 3

14 Deklaration/Initialisierung Deklaration und Initialisierung können in einer Anweisung gemacht werden. Syntax: type name = value; double mygpa = 3.95; mygpa 3.95 int x = (11 % 3) + 12; x 14

15 Zuweisung (Programm) und Algebra (Mathematik) Zuweisung verwendet =, aber eine Zuweisung ist keine algebraische Gleichung! = bedeutet: speichere den Wert der RHS in der Variable der LHS " Die rechte Seite des Ausdrucks wird zuerst ausgewertet, dann wird das Ergebnis in der Variable auf der linken Seite gespeichert Was passiert hier? int x = 3; x = x + 2; //??? x 35

16 20

17 Zuweisungen und Typen Eine Variable kann nur Werte ihres eigenen Typs speichern. int x = 2.5; // ERROR: incompatible types Ein int Wert kann in einer double Variable gespeichert werden Wert in äquivalente reelle Zahl umgewandelt. double mygpa = 4; double avg = 11 / 2; Warum hat avg den Wert 5.0 und nicht 5.5? mygpa 4.0 avg 5.0

18 Compiler Fehler Meldungen Eine Variable kann erst nach einer Zuweisung verwendet werden. int x; System.out.println(x); // ERROR: x has no value Keine Doppeltdeklarationen. int x; int x; // ERROR: x already exists int x = 3; int x = 5; // ERROR: x already exists

19 Drucken des Wertes einer Variablen Operator + zum Drucken eines String und des Wertes einer Variable in einer Zeile. double punkte = ( ) / 3.0; System.out.println("Im Schnitt " + punkte + "Punkte"); int students = ; System.out.println("There are " + students + Output: Im Schnitt 83.2 Punkte There are 65 students in the course. " students in the course.");

20 Beispiel Lohnabrechnung Wir erinnern uns wie können wir dieses Programm verbessern? public class Lohn{ public static void main(string[] args) { // Calculate net wages based on weekly hours worked // deduct AHV 4.2%, IV 0.7%, ALV 1.0%, 30 CHF/Stunde System.out.println("Hours worked:"); System.out.println( ); System.out.println("AHV:"); System.out.println(30*( ) *.042); System.out.println("IV:"); System.out.println(30*( ) *.007);...

21 public class Lohn{ public static void main(string[] args) { // Calculate net wages based on weekly hours worke; deduct AHV 4.2%, IV 0.7%, ALV 1.0% System.out.println("Hours worked:"); System.out.println( ); System.out.println("AHV:"); System.out.println(30*( ) *.042); System.out.println("IV:"); System.out.println(30*( ) *.007); System.out.println("ALV:"); System.out.println(30*( ) *.01); } } System.out.println("Lohn:"); System.out.println(30*( ) ((30*( ) * (30*( ) * (30*( ) *.01) );

22 Lohnabrechnung, Version 2 public class Lohn{ public static void main(string[] args) { // Calculate net wages based on weekly hours worke; deduct AHV 4.2%, IV 0.7%, ALV 1.0% int stunden = ; int lohnbrutto = 30 * stunden; double ahvabzug = lohnbrutto *.042; double ivabzug = lohnbrutto *.007; double alvabzug = lohnbrutto *.01; double lohnnetto = lohnbrutto (ahvabzug + ivabzug +alvabzug); } } System.out.println("Lohn: " + lohnnetto);

23 Einfache Schleifen: for loop Schleifen erlauben wiederholte Ausführung einer (oder mehrerer) Anweisung(en). Schleifen ( loops ) kommen in verschiedenen Varianten Zuerst: for loop

24 for loops erlauben einfache Wiederholungen Bisherwaren Wiederholungeneigentlich redundant: System.out.println( Ich werde die Schulhausregeln beachten"); System.out.println( Ich werde die Schulhausregeln beachten"); System.out.println( Ich werde die Schulhausregeln beachten"); System.out.println( Ich werde die Schulhausregeln beachten"); System.out.println( Ich werde die Schulhausregeln beachten");

25 for loops erlauben Wiederholungen Bisherwaren Wiederholungeneigentlich redundant: System.out.println( Ich werde die Schulhausregeln beachten"); System.out.println( Ich werde die Schulhausregeln beachten"); System.out.println( Ich werde die Schulhausregeln beachten"); System.out.println( Ich werde die Schulhausregeln beachten"); System.out.println( Ich werde die Schulhausregeln beachten"); Trotzdem machen sie das Programm unübersichtlich Javas for loop Anweisung führt Anweisungen wiederholt aus. for (int i = 1; i <= 5; i++) { // repeat 5 times System.out.println( Ich werde die Schulhausregeln beachten"); }

26 for loop Syntax for (initialization; test; update) { statement; statement;... statement; } Initialisierung ("Initialization") wird einmal ausgeführt. Wiederhole diese Schritte: Prüfe ob test wahr ("true") ergibt. Wenn nicht, stop. Führe die Anweisung(en) ("statement"s) aus. Führe die Aktualisierung ("update") aus. header (Kopf) body (Rumpf)

27 Initialisierung for (int i = 1; i <= 5; i = i + 1) { System.out.println("Ich werde die Schulhausregeln beachten"); } Legt die Variable fest, die im Loop verwendet wird Wird einmal am Anfang der Schleife ausgeführt Diese Variable heisst Schleifenzähler ( loop counter ) Kann jeden Namen haben, nicht nur i Kann mit jedem Wert anfangen, nicht nur 1

28 Test for (int i = 1; i <= 5; i = i + 1) { System.out.println("Ich werde die Schulhausregeln beachten"); } Vergleicht die Zählervariable (loop counter) mit einem Grenzwert Verwendet Vergleichsoperatoren ( comparison operators ): < kleiner als ( less than ) <= kleiner als oder gleich ( less than or equal to ) > grösser als ( greater than ) >= grösser als oder gleich ( greater than or equal to )

29 Aktualisierung for (int i = 1; i <= 5; i = i + 1) { System.out.println("Ich werde die Schulhausregeln beachten"); } Die Zählervariable muss sich ändern Sonst findet die Schleife kein Ende test ergibt immer true Ein beliebiger Ausdruck zulässig Compiler prüft nicht dass die Zählervariable verwendet wird

30 Kurzformen für Zuweisungen Zuweisungen der Form j = j+1 tretten häufig auf Machen Programm unübersichtlich Früher: unnötige Extra-Arbeit für Compiler und Computer Kurzformen erlauben Inkrement (Addition von 1) und Dekrement (Subtraktion von 1) increment und decrement Veränderung immer um 1

31 Inkrement und Dekrement Kurzform Aequivalente ausführlichere Version variable++; variable = variable + 1; variable--; variable = variable - 1; Beispiele int x = 2; x++; // x = x + 1; // x now stores 3 double note = 4.5; note--; // note = note - 1; // note now stores 3.5

32 Schleife Kurzform häufig in Aktualisierungsblock einer Schleife for (int i = 1; i <= 6; i++) { } System.out.println("Ich werde die Schulhausregeln beachten"); Nachdem alle Anweisungen im Schleifenrumpf ( body ) ausgeführt wurden findet die Aktualisierung (der Zählervariable) statt

33 Wiederholungen für ein Interval [1..6] System.out.println("1 hoch 2 = " + 1 * 1); System.out.println("2 hoch 2 = " + 2 * 2); System.out.println("3 hoch 2 = " + 3 * 3); System.out.println("4 hoch 2 = " + 4 * 4); System.out.println("5 hoch 2 = " + 5 * 5); System.out.println("6 hoch 2 = " + 6 * 6);

34 Wiederholungen für ein Interval [1..6] System.out.println("1 hoch 2 = " + 1 * 1); System.out.println("2 hoch 2 = " + 2 * 2); System.out.println("3 hoch 2 = " + 3 * 3); System.out.println("4 hoch 2 = " + 4 * 4); System.out.println("5 hoch 2 = " + 5 * 5); System.out.println("6 hoch 2 = " + 6 * 6); Intuition: Ich will eine Zeile für jede Zahl von 1 bis 6 ausgeben Ein for loop erledigt genau diesen Job! for (int i = 1; i <= 6; i++) { System.out.println(i + " hoch 2 = " + (i * i)); } "Für jede ganze Zahl i von 1 bis 6, drucke..."

35 47

36 Mehrere Anweisungen im Rumpf System.out.println("+----+"); for (int i = 1; i <= 3; i++) { System.out.println("\\ /"); System.out.println("/ \\"); } System.out.println("+----+"); Output: \ / / \ \ / / \ \ / / \

37 Schleifenkontrolle int hightemp = 5; for (int i = -3; i <= hightemp / 2; i++) { System.out.println(i + " C = " + (i * ) + " F"); } Output: -3 C = 26.6 F -2 C = 28.4 F -1 C = 30.2 F 0 C = 32.0 F 1 C = 33.8 F 2 C = 35.6 F

38 System.out.print Druckt ohne eine Reihe mit newline abzuschliessen Erlaubt es eine Zeile sukzessive auszugeben int hightemp = 5; for (int i = -3; i <= hightemp / 2; i++) { System.out.print((i * ) + " "); } Output: Verwende " " um die Zahlen zu trennen

39 Hochzählen, herunterzählen Die Aktualisierung ( update ) kann auch -- um den Schleifenzähler herunterzuzählen Aber der Vergleich in test muss dann > anstatt von < verwenden System.out.print("T-minus "); for (int i = 10; i >= 1; i--) { System.out.print(i + ", "); } System.out.println("blastoff!"); System.out.println("The end."); Output: T-minus 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, blastoff! The end.

40 Interaktive Programme mit Scanner

41 Input und System.in Interaktives Programm: Liest Input von der Konsolve ( console ). Während das Programm ausgeführt wird fragt das Programm den Benutzer Benutzer tippt Input in das Konsolen Fenster Der vom Benutzer eingegebene Input wird durch Anweisungen im Programm in Variablen gespeichert Später auch andere Art des Inputs (von anderen Fenstern)

42 Input und System.in Input komplizierter als Output Benutzer können sich auf unvorgesehene Weise verhalten Benutzer können Fehler machen Benutzer können unpassenden Input liefern Aber interaktive Programme sind viel interessanter.. Scanner: erlaubt es Input von unterschiedlichen Quellen zu lesen Funktioniert mit System.in (dem Gegenteil von System.out) Kann auch von Dateien, Web Seiten, Datenbanken, lesen

43 Scanner Syntax Scanner sind in der Bibliothek java.util definiert Muss erst bekannt gegeben werden import java.util.*; // so dass wir Scanner benutzen können Programm braucht ein Scanner Objekt um von der Konsole zu lesen: Dieses muss konstruiert werden Scanner name = new Scanner(System.in); Beispiel: Scanner console = new Scanner(System.in);

44 Scanner Methoden Method nextint() nextdouble() next() nextline() Description reads an int from the user and returns it reads a double from the user reads a one-word String from the user reads a one-line String from the user Jede Methode wartet bis der Benutzer die Eingabe mit der "ENTER" (oder "RETURN") Taste abschliesst. Der eingegebene Wert kann weiter verarbeitet werden. System.out.print("Wie alt sind Sie? "); // prompt int alter = console.nextint(); System.out.println("Ihre Eingabe " + alter); "prompt" (Aufforderung): Text der angibt welche Eingabe erwartet wird.

45 Scanner Beispiel import java.util.*; // so dass Scanner verwendent werden kann public class UserInputExample { public static void main(string[] args) { Scanner console = new Scanner(System.in); System.out.print("Wie alt sind Sie? "); int alter = console.nextint(); alter 29 jahre 36 } } int jahre = 65 - alter; System.out.println(jahre + " Jahre bis zur Pension!"); Console (user input underlined): 29 Wie alt sind Sie? 36 Jahre bis zur Pension!

46 Scanner Beispiel 2 import java.util.*; public class ScannerMultiply { public static void main(string[] args) { Scanner console = new Scanner(System.in); } System.out.print("Please type two numbers: "); int num1 = console.nextint(); int num2 = console.nextint(); int product = num1 * num2; System.out.println("The product is " + product); } Output (Benutzereingabe unterstrichen): Please type two numbers: 8 6 The product is 48 Der Scanner kann mehrere Zahlen in einer Zeile lesen.

47 Wo finde ich Informationen Dort finden wir mehr Informationen Z.Zt. noch nicht alle Konzepte erklärt Darum "ignorieren" wir die andere Aspekte (ausser denen, die wir für das Beispiel brauchen) 62

48 63

49 Eingabe Elemente Der Scanner liest (für nextint()) eine Folge von Ziffern und wandelt diese in eine Zahl (int) um Braucht Beschreibung von legalen ints Z.B. EBNF Beschreibung Muss wissen wo eine int Beschreibung aufhört (anfängt) Beschreibung von Leerzeichen/Trennzeichen Auch wieder mit EBNF möglich Folge von Zeichen die der Scanner liest: Token Input Element Erwartete Zeichen hängen von Methode (z.b. nextdouble()) ab

50 Eingabe Elemente Folge von Zeichen die der Scanner liest: Token Token werden durch Leerraum ("whitespace") getrennt Leerzeichen ("space", "blank") Tabulator Zeichen ("tab"), Zeilenvorschub ("new line"). Wie viele Token sind in dieser Zeile? 23 John Smith 42.0 Token kann Kontext-abhängigsein $2.50 "hello World" 1.456E12 "45 18"

51 Eingabe Elemente Wenn das Token nicht den richtigen Typ hat gibt es (zur Laufzeit) eine Fehlermeldung. System.out.print("Was ist Ihr Alter? "); int alter = console.nextint(); Output: Was ist Ihr Alter? Timmy java.util.inputmismatchexception at java.util.scanner.next(unknown Source) at java.util.scanner.nextint(unknown Source)...

52 Noch ein Beispiel import java.util.*; // for Scanner public class IncNumber { public static void main(string[] args) { Scanner console = new Scanner(System.in); System.out.print("Type a number: "); int numberin = console.nextint(); System.out.println("Number + 1: " + (1 + numberin)); } } 71

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

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

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

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

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

Einführung in die Programmierung I. 3.0 Funktionen. Thomas R. Gross. Department Informatik ETH Zürich 252-0027 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. Uebersicht 3.1 Parameter

Mehr

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

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

Mehr

Tutoraufgabe 1 (Zweierkomplement): Lösung: Programmierung WS16/17 Lösung - Übung 2

Tutoraufgabe 1 (Zweierkomplement): Lösung: Programmierung WS16/17 Lösung - Übung 2 Prof. aa Dr. J. Giesl Programmierung WS16/17 F. Frohn, J. Hensel, D. Korzeniewski Tutoraufgabe 1 (Zweierkomplement): a) Sei x eine ganze Zahl. Wie unterscheiden sich die Zweierkomplement-Darstellungen

Mehr

Übung 1: Installation + Test von Eclipse. Übung 2: Hello World

Übung 1: Installation + Test von Eclipse. Übung 2: Hello World Übung 1: Installation + Test von Eclipse Es soll die Installation der Entwicklungsumgebung Eclipse durchgeführt werden gemäss Dokument "InstallationTest.Eclipse.15.0.pdf" auf der DVD im Verzeichnis Eclipse.

Mehr

Einführung in die Programmierung

Einführung in die Programmierung 252-0027 Einführung in die Programmierung 2.3.2 Verschachtelte Schleifen Thomas R. Gross Department Informatik ETH Zürich 2.3.2 Verschachtelte for Schleifen for Schleife for (initialization; test; update)

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

Einführung in die Programmierung I

Einführung in die Programmierung I 252-0027 Einführung in die Programmierung I 3.0 Funk;onen Thomas R. Gross Department Informa;k ETH Zürich Uebersicht! 3.1 Parameter! 3.2 Return Copyright (c) Pearson 2013. and Thomas Gross 2016 All rights

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

Primitive Datentypen, Eingaben, Kontrollstrukturen und Methodendeklaration

Primitive Datentypen, Eingaben, Kontrollstrukturen und Methodendeklaration Primitive Datentypen, Eingaben, Kontrollstrukturen und Methodendeklaration CoMa-Übung III TU Berlin 30.10.2013 Primitive Datentypen, Eingaben, Kontrollstrukturen und Methodendeklaration 30.10.2013 1 /

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

Einführung in die Programmierung I

Einführung in die Programmierung I 252-0027 Einführung in die Programmierung I 2.6 if-anweisungen Thomas R. Gross Department Informa?k ETH Zürich Uebersicht! 2.6 "if" Anweisungen! 2.7 Nochmal Schleifen 2 if Anweisung ("if-statement")! Führt

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

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

Programmieren I. Kontrollstrukturen Heusch 8 Ratz Institut für Angewandte Informatik

Programmieren I. Kontrollstrukturen Heusch 8 Ratz Institut für Angewandte Informatik Programmieren I Kontrollstrukturen Heusch 8 Ratz 4.5 KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft www.kit.edu Arten von Kontrollstrukturen Neben der Sequenz (Aneinanderreihung von Anweisungen)

Mehr

Javakurs für Anfänger

Javakurs für Anfänger Javakurs für Anfänger Einheit 03: Wiederholung und Nutzereingaben Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda 1. Teil: Wiederholung Klassen, Objekte, Attribute und Methoden

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

Einstieg in die Informatik mit Java

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

Mehr

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

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

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

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

2 Eine einfache Programmiersprache

2 Eine einfache Programmiersprache 2 Eine einfache Programmiersprache Eine Programmiersprache soll Datenstrukturen anbieten Operationen auf Daten erlauben Kontrollstrukturen zur Ablaufsteuerung bereitstellen Als Beispiel betrachten wir

Mehr

Unterlagen. CPP-Uebungen-08/

Unterlagen.  CPP-Uebungen-08/ Unterlagen http://projects.eml.org/bcb/people/ralph/ CPP-Uebungen-08/ http://www.katjawegner.de/lectures.html Kommentare in C++ #include /* Dies ist ein langer Kommentar, der über zwei Zeilen

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

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

Eine JAVA Einführung ... Quellcode:... COMA Übung 3. T.Bosse. A.Griewank. Vorschau JAVA Programme Sprachen Kate

Eine JAVA Einführung ... Quellcode:... COMA Übung 3. T.Bosse. A.Griewank. Vorschau JAVA Programme Sprachen Kate COMA Eine Einführung Quellcode: Anweisung(en)1 Wiederhole: T.Bosse Anweisung(en) 2 Einfache Schleifen (z.b. for-loop) Wiederhole: Falls (Bedingung) wahr, tue: Anweisung(en) 2 sonst führe Verzweigungen

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 Vorlesung vom 25.4.07, Anweisungen Übersicht 1 Ausdrucksanweisung 2 Einfache Ausgabeanweisung 3 Einfache Eingabeanweisung, Vorbereitungen 4 Verbundanweisung 5 Bedingte Anweisung 6 Auswahlanweisung 7 for

Mehr

Programmieren I. Kontrollstrukturen Heusch 8 Ratz Institut für Angewandte Informatik

Programmieren I. Kontrollstrukturen Heusch 8 Ratz Institut für Angewandte Informatik Programmieren I Kontrollstrukturen Heusch 8 Ratz 4.5 KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft www.kit.edu Arten von Kontrollstrukturen Neben der Aneinanderreihung von Anweisungen (Sequenz)

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

Informatik. Studiengang Chemische Technologie. Michael Roth Hochschule Darmstadt -Fachbereich Informatik- WS 2012/2013.

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

Mehr

6. Iteration (Schleifenanweisungen)

6. Iteration (Schleifenanweisungen) 6. Iteration (Schleifenanweisungen) Java-Beispiel: TemperatureTable.java K. Bothe, Institut für Informatik, HU Berlin, GdP, WS 2015/16 Version: 9. Nov. 2015 2 Schwerpunkte While-Anweisung: "abweisende"

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

Datentypen und Operatoren

Datentypen und Operatoren Programmiervorkurs SS 2013 Datentypen und Operatoren Termin 2 Wiederholung: Einfache Datentypen Welche Datentypen kennt Ihr bereits? Einfache Datentypen Zeichen public class MyCharTest { char c1 = 'a';

Mehr

Tag 4 Repetitorium Informatik (Java)

Tag 4 Repetitorium Informatik (Java) Tag 4 Repetitorium Informatik (Java) Dozent: Michael Baer Lehrstuhl für Informatik 2 (Programmiersysteme) Friedrich-Alexander-Universität Erlangen-Nürnberg Wintersemester 2017/2018 Übersicht Arrays (Reihungen)

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 21 Einstieg in die Informatik mit Java Felder, eindimensional Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 21 1 Überblick: Was sind Felder? 2 Vereinbarung von Feldern

Mehr

Einführung in den Einsatz von Objekt-Orientierung mit C++ I

Einführung in den Einsatz von Objekt-Orientierung mit C++ I Einführung in den Einsatz von Objekt-Orientierung mit C++ I ADV-Seminar Leiter: Mag. Michael Hahsler Syntax von C++ Grundlagen Übersetzung Formale Syntaxüberprüfung Ausgabe/Eingabe Funktion main() Variablen

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

Informatik I - Übung 2 Programmieren in Eclipse

Informatik I - Übung 2 Programmieren in Eclipse Informatik I - Übung 2 Programmieren in Eclipse. / Info1 / HelloWorld / HelloWorld Wort1 Wort2 Daniel Hentzen dhentzen@student.ethz.ch 5. März 2014 1.2 Häufigste Fehler im Terminal auf Gross-/Kleinschreibung

Mehr

Programmieren I. Operatoren und Ausdrücke Heusch 6.2 Ratz Institut für Angewandte Informatik

Programmieren I. Operatoren und Ausdrücke Heusch 6.2 Ratz Institut für Angewandte Informatik Programmieren I Operatoren und Ausdrücke Heusch 6.2 Ratz 4.4.2 KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft www.kit.edu Ausdrücke, Arten von Operatoren Ein Ausdruck ist eine Folge von Operatoren

Mehr

6. Iteration (Schleifenanweisungen)

6. Iteration (Schleifenanweisungen) Schwerpunkte While-: "abweisende" Schleife 6. Iteration (Schleifenanweisungen) Java-Beispiel: TemperatureTable.java Do-while-: "nichtabweisende" Schleife For-: zählergesteuerte Schleife Klassifikation

Mehr

11.0 Systematisches Programmierung

11.0 Systematisches Programmierung 252-0027 Einführung in die Programmierung 11.0 Systematisches Programmierung Thomas R. Gross Department Informatik ETH Zürich Copyright (c) Pearson 2013 and Thomas Gross 2016 All rights reserved. Uebersicht

Mehr

3. Kontrollstrukturen Grundlagen der Programmierung 1 (Java)

3. Kontrollstrukturen Grundlagen der Programmierung 1 (Java) 3. Kontrollstrukturen Grundlagen der Programmierung 1 (Java) Fachhochschule Darmstadt Haardtring 100 D-64295 Darmstadt Prof. Dr. Bernhard Humm FH Darmstadt, 11. Oktober 2005 Agenda Agenda Verzweigungen

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

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

Felder. Gerd Bohlender. Einstieg in die Informatik mit Java, Vorlesung vom Einstieg in die Informatik mit Java, Vorlesung vom 9.5.07 Übersicht 1 Was sind? 2 Vereinbarung von n 3 Erzeugen von n 4 Zugriff auf Feldkomponenten 5 Mehrdimensionale 6 als Objekte, Referenzen Kopieren

Mehr

Java. CoMa-Übung II TU Berlin. CoMa-Übung II (TU Berlin) Java / 28

Java. CoMa-Übung II TU Berlin. CoMa-Übung II (TU Berlin) Java / 28 Java CoMa-Übung II TU Berlin 24.10.2012 CoMa-Übung II (TU Berlin) Java 24.10.2012 1 / 28 Themen der Übung 1 Java-Installation 2 Hello World 3 Temperature CoMa-Übung II (TU Berlin) Java 24.10.2012 2 / 28

Mehr

SWE1 / Übung 2 (19.10.2011)

SWE1 / Übung 2 (19.10.2011) SWE1 / Übung 2 (19.1.211) Simulation von Algorithmen Testen, Testplan Beispiel arithmetische Ausdrücke Handsimulation von Algorithmen Man versteht einen Algorithmus (insbesonders einen "Fremden"), wenn

Mehr

Die einfachsten Anweisungen

Die einfachsten Anweisungen 2 Die einfachsten Anweisungen 2-1 Inhalt Die einfachsten Anweisungen Einführung Datentypen Arithmetische Operatoren Mathematische Funktionen Mehrfache Zuweisungen Übungsaufgaben Einführung Wir wollen unser

Mehr

Autoboxing - Nachtrag

Autoboxing - Nachtrag Autoboxing - Nachtrag Mit dem Autoboxing ist eine Reihe von Unregelmässigkeiten verbunden, die der Programmierer beachten muss, um Fehler zu vermeiden. aus: Christian Ullenboom Java ist auch eine Insel

Mehr

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

Praktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2015/16. Vorbereitende Aufgaben Praktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2015/16 Fakultät für Informatik Lehrstuhl 14 Lars Hildebrand, Marcel Preuß, Iman Kamehkhosh, Marc Bury, Diana Howey Übungsblatt

Mehr

Ausgabe:

Ausgabe: Aufgabe 2.10: Schreiben Sie ein Programm, das zunächst die Quadratzahlen zu den Zahlen 1-10 mit Hilfe einer While- Schleife und danach die Quadratzahlen zu den Zahlen 3, 6, 9,.., 30 mit Hilfe einer For-Schleife

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

Java - Schleifen. Bedingung. wiederhole. Anweisung Anweisung Anweisung. Leibniz Universität IT Services Anja Aue

Java - Schleifen. Bedingung. wiederhole. Anweisung Anweisung Anweisung. Leibniz Universität IT Services Anja Aue Java - Schleifen Bedingung wiederhole ja Anweisung Anweisung Anweisung Leibniz Universität Anja Aue Schleifen Iterationsanweisungen. Wiederholung von Anweisung in Abhängigkeit einer Bedingung. Eine Verschachtelung

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

Arrays und Schleifen

Arrays und Schleifen Arrays und Schleifen Javakurs 2014, 2. Vorlesung Sebastian Schuck basierend auf der Vorlage von Theresa Enghardt, Mario Bodemann und Sebastian Dyroff wiki.freitagsrunde.org 3. März 2014 This work is licensed

Mehr

7. Java Fehler und Ausnahmen

7. Java Fehler und Ausnahmen Fehler und Ausnahmen in Java 7. Java Fehler und Ausnahmen Fehler und Ausnahmen unterbrechen die normale Programmausführung abrupt und stellen eine nicht geplantes Ereignis dar. Ausnahmen sind böse, oder

Mehr

Kapitel Was ist ein Header? Was ist ein Body? Header: public Account(String newowner, int newpin)

Kapitel Was ist ein Header? Was ist ein Body? Header: public Account(String newowner, int newpin) Kapitel 2.6 1. Was ist ein Header? Was ist ein Body? Header: public Account(String newowner, int newpin) Body: Alles im Block darunter: [...] 2. Geben Sie die Methodensignaturen der TicketMachine (Code

Mehr

Umsetzung einer Klassenkarte in einer Programmiersprache

Umsetzung einer Klassenkarte in einer Programmiersprache Klassen in Java Umsetzung einer Klassenkarte in einer Programmiersprache Objektorientierte Programme bestehen (nur) aus Klassendefinitionen In Klassendefinitionen wird die Struktur der Objekte festgelegt,

Mehr

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

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

Mehr

Kontrollstrukturen: Wiederholungsanweisungen

Kontrollstrukturen: Wiederholungsanweisungen Kontrollstrukturen: Wiederholungsanweisungen Annabelle Klarl Zentralübung zur Vorlesung Einführung in die Informatik: http://www.pst.ifi.lmu.de/lehre/wise-16-17/infoeinf WS16/17 Action required now 1.

Mehr

2.4 Schleifen. Schleifen unterscheiden sich hinsichtlich des Zeitpunktes der Prüfung der Abbruchbedingung:

2.4 Schleifen. Schleifen unterscheiden sich hinsichtlich des Zeitpunktes der Prüfung der Abbruchbedingung: 2.4 Schleifen Schleifen beschreiben die Wiederholung einer Anweisung bzw. eines Blocks von Anweisungen (dem Schleifenrumpf) bis eine bestimmte Bedingung (die Abbruchbedingung) eintritt. Schleifen unterscheiden

Mehr

5. Java Arrays und Strings

5. Java Arrays und Strings Arrays Arrayvariable deklarieren: int[] z; z 5. Java Arrays und Strings Array erzeugen: z = new int[5]; Allokation, Referenzen, Elementzugriff, Mehrdimensionale Arrays, Strings, Stringvergleiche z ist

Mehr

Vorbereitende Aufgaben

Vorbereitende Aufgaben Praktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2015/16 Fakultät für Informatik Lehrstuhl 14 Lars Hildebrand, Marcel Preuß, Iman Kamehkhosh, Marc Bury, Diana Howey Übungsblatt

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

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

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

Java Cheatsheet. Mehrzeiliger Kommentar (beginnt mit /* und endet mit */)

Java Cheatsheet. Mehrzeiliger Kommentar (beginnt mit /* und endet mit */) Good code is its own best documentation. (Steve McConnell) Java Cheatsheet Java Grundlagen Aufbau einer Klasse Name der Klasse public class MeineKlasse { Textdatei MeineKlasse.java (muss dem Namen der

Mehr

Motivation. Bisher bestanden die Rümpfe unserer Methoden aus einzelnen Statements, z.b. Wertzuweisungen oder Methodenaufrufen.

Motivation. Bisher bestanden die Rümpfe unserer Methoden aus einzelnen Statements, z.b. Wertzuweisungen oder Methodenaufrufen. Motivation Einführung in die Informatik Controlling Behavior Das if-statement Wolfram Burgard Bisher bestanden die Rümpfe unserer Methoden aus einzelnen Statements, z.b. Wertzuweisungen oder Methodenaufrufen.

Mehr

Informatik I - Einstiegskurs

Informatik I - Einstiegskurs Informatik I - Einstiegskurs Dr. Henrik Brosenne Georg-August-Universität Göttingen Institut für Informatik Basiert auf dem Einstiegskurs im Wintersemester 2009/10 von Markus Osterhoff Wintersemester 2012/13

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

3. Anweisungen und Kontrollstrukturen

3. Anweisungen und Kontrollstrukturen 3. Kontrollstrukturen Anweisungen und Blöcke 3. Anweisungen und Kontrollstrukturen Mit Kontrollstrukturen können wir den Ablauf eines Programmes beeinflussen, z.b. ob oder in welcher Reihenfolge Anweisungen

Mehr

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

Institut für Programmierung und Reaktive Systeme. Java 6. Markus Reschke Institut für Programmierung und Reaktive Systeme Java 6 Markus Reschke 13.10.2014 OOP Objekte = Verhalten (durch Methoden) + Daten (durch Attribute) Klassen = Baupläne für Objekte Kapselung von Programmteilen

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

Grundlagen der Informatik 6. Arrays I

Grundlagen der Informatik 6. Arrays I 6. Arrays I Motivation Array (konstante Länge) Speicherbereich Eingabe von Arrays Grundlagen der Informatik (Alex Rempel) 1 Motivation Beispiel: Bildschirmpixel zeichnen Auflösung 800x600, d.h. insgesamt

Mehr

Übungsstunde 10. Einführung in die Programmierung

Übungsstunde 10. Einführung in die Programmierung Übungsstunde 10 Einführung in die Programmierung Probleme bei Übung 9 [TODO Assistent] Nachbesprechung Übung 10 Aufgabe 1: Klassen (Bonus!) Feedback nach der Korrektur direkt per SVN Aufgabe 2: Interfaces

Mehr

Informatik I. Übung 2 : Programmieren in Eclipse. 5. März Daniel Hentzen

Informatik I. Übung 2 : Programmieren in Eclipse. 5. März Daniel Hentzen Informatik I Übung 2 : Programmieren in Eclipse 5. März 2014 Daniel Hentzen dhentzen@student.ethz.ch Downloads : http://n.ethz.ch/~dhentzen/download/ Heute 1. Nachbesprechung Übung 1 2. Theorie 3. Vorbesprechung

Mehr

Einführung in die Programmierung für NF. Rückgabewerte, EBNF, Fallunterscheidung, Schleifen

Einführung in die Programmierung für NF. Rückgabewerte, EBNF, Fallunterscheidung, Schleifen Einführung in die Programmierung für NF Rückgabewerte, EBNF, Fallunterscheidung, Schleifen FUNKTIONEN UND PROZEDUREN 3 Rückgabewerte, EBNF, Fallunterscheidung, Schleifen 2 Funk@on und Prozedur Methoden

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

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

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 Welche Arten von Anweisungen gibt es? Anweisungen

Mehr

Ausdrucksbäume in verschiedenen Darstellungen

Ausdrucksbäume in verschiedenen Darstellungen Ausdrucksbäume in verschiedenen Darstellungen SWE-42 Infix mit notwendigen Klammern: (a + b) / (c - d) Infix vollständig geklammert: (((a) + (b)) / ((c) - (d))) Postfix a b + c d - / Präfix / + a b - c

Mehr

Grundlagen der Programmierung Prof. H. Mössenböck. 2. Einfache Programme

Grundlagen der Programmierung Prof. H. Mössenböck. 2. Einfache Programme Grundlagen der Programmierung Prof. H. Mössenböck 2. Einfache Programme Grundsymbole Namen bezeichnen Variablen, Typen,... in einem Programm - bestehen aus Buchstaben, Ziffern und "_" - beginnen mit Buchstaben

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

Übungsstunde 10. Einführung in die Programmierung I

Übungsstunde 10. Einführung in die Programmierung I Übungsstunde 10 Einführung in die Programmierung I Probleme bei Übung 9 [TODO Assistent] Nachbesprechung Übung 10 Aufgabe 1 Comparable boolean lessthan(comparable other) Ziel: Schreiben von Methoden,

Mehr

Java I Vorlesung Imperatives Programmieren

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

Mehr

Die Sprache C# Datentypen, Speicherverwaltung Grundelemente der Sprache. Dr. Beatrice Amrhein

Die Sprache C# Datentypen, Speicherverwaltung Grundelemente der Sprache. Dr. Beatrice Amrhein Die Sprache C# Datentypen, Speicherverwaltung Grundelemente der Sprache Dr. Beatrice Amrhein Überblick Speicherverwaltung: Stack und Heap Ein- und Ausgabe über die Console Variablen und Operatoren Parameter

Mehr

Kapitel 3. Programmierkurs. Arten von Anweisungen. 3.1 Was sind Anweisungen?

Kapitel 3. Programmierkurs. Arten von Anweisungen. 3.1 Was sind Anweisungen? Kapitel 3 Programmierkurs Birgit Engels, Anna Schulze ZAIK Universität zu Köln Anweisungen, Variablen Arten von Anweisungen Variablen Konstanten Höchste Zeit für ein Programm Gültigkeitsbereich von Variablen

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

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

Klassen und Objekte. Objekte einer Klasse bilden

Klassen und Objekte. Objekte einer Klasse bilden Klassen und Objekte SWE-18 Eine Klasse definiert gleichartige Objekte mit ihren Datenelementen (Variable, fields) und Operationen (Methoden) in einer geschlossenen Programmstruktur. Beispiel: class Circles

Mehr

Programmiervorkurs WS 2012/2013. Schleifen und Methoden

Programmiervorkurs WS 2012/2013. Schleifen und Methoden Programmiervorkurs WS 2012/2013 Schleifen und Methoden Ein Befehl soll mehrfach ausgeführt werden, z.b.: public class MyCounter { System.out.println(1); Ein Befehl soll mehrfach ausgeführt werden, z.b.:

Mehr

Projekt 3 Variablen und Operatoren

Projekt 3 Variablen und Operatoren Projekt 3 Variablen und Operatoren Praktisch jedes Programm verarbeitet Daten. Um mit Daten programmieren zu können, muss es Möglichkeiten geben, die Daten in einem Programm zu verwalten und zu manipulieren.

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

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

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 26 Einstieg in die Informatik mit Java Felder Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 26 1 Was sind Felder? 2 Vereinbarung von Feldern 3 Erzeugen von Feldern

Mehr