Informatik II - Übung 01

Ähnliche Dokumente
Informatik II - Übung 01

Informatik II Übung 1 Gruppe 7. Leyna Sadamori

Informatik II Übung 1 (slides teils von Christian Beckel) Gruppe 4. Lukas Burkhalter

Informatik II Übung 1 Gruppe 7

Informatik II Übung 01. Benjamin Hepp 8 March 2017

Informatik II Übung 1

Java-Einführungskurs Informatik II (D-ITET) Vincent Becker,

Java-Einführungskurs Informatik II (D-ITET) Vincent Becker,

Einführung zu den Übungen aus Softwareentwicklung 1

Informatik II Übung 2

Eclipse Tutorial.doc

Einführung zu den Übungen aus Softwareentwicklung 1

Erste Schritte mit Eclipse

Grundlagen der Informatik für Ingenieure I

Übungen zur Vorlesung. Maschinelles Lernen. Wintersemester 2011/2012

Einführung in Eclipse und Java

Installationsanleitung

Technische Informatik für Ingenieure Winter 2005/2006 Übungsblatt Nr. 3

1.3.1 Java-Compiler installieren

Java-Einführungskurs Informatik II für D-ITET FS 2017, ETH Zürich

Kurzanleitung Eclipse

Java Übung. Einführung. 12. April Universität Duisburg-Essen Kommedia, Übung EinPro SS06, Einführung in Java - Übung. Vorbereitendes.

Grundlagen der Programmierung UE. Dr. Herbert Prähofer (Gruppe 1 2, & 3) DI Markus Weninger(Gruppe 4)

Micro Focus Unit Testing Framework in Visual COBOL 3.0. Rolf Becking 29.August 2017

Übung Softwareentwicklung 1, WS0910 Gemeinsame Einführung

Technische Informatik für Ingenieure WS 2010/2011 Übungsblatt Nr. 3

Java: Kapitel 1. Überblick. Programmentwicklung WS 2008/2009. Holger Röder Holger Röder

Es sollte die MS-DOS Eingabeaufforderung starten. Geben Sie nun den Befehl javac ein.

Java für C++ Programmierer

II.1.1. Erste Schritte - 1 -

Programmieren I. Die Programmiersprache Java. Institut für Angewandte Informatik

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

Vorkurs Informatik WiSe 16/17

Informatik II - Übung 12

Python SVN-Revision 12

Exceptions. CoMa-Übung VII TU Berlin. CoMa-Übung VII (TU Berlin) Exceptions / 1

Teil 3 - Java. Grundlagen Klassen, Attribute Methoden

Informatik II Übung 2. Pascal Schärli

JAVA. Ein kurzer Überblick. Thomas Karp

Java-Einführungskurs Informatik II für D-ITET FS 2015, ETH Zürich

1 Organisatorisches. 2 Compilezeit- und Laufzeitfehler. 3 Exceptions. 4 Try-Catch-Finally

Programmiervorkurs. Wintersemester 2013/2014

Java Kurs für Anfänger LMU SS09 Einheit 1 Javaumgebung

Algorithmen und Datenstrukturen

Übung zur Vorlesung Strukturiertes Programmieren WS 2014/15. Übungsblatt 1: JAVA - Erste Schritte Abgabe: Besprechung:

II.1.1. Erste Schritte - 1 -

Institut für Programmierung und Reaktive Systeme 25. Januar Programmieren I. Übungsklausur

Für die Erstellung von Javaprogrammen sind eventuell zwei Komponenten nötig. 1. Das Java-Develepment-Kit (JDK) und die 2. Java Runtime Engine (JRE)

II.1.1. Erste Schritte - 1 -

Technische Informatik für Ingenieure WS 2010/2011 Musterlösung Übungsblatt Nr. 3

Installation von NetBeans inkl. Glassfish Anwendungs-Server

AuP Survival Guide. Peter Tröger und Christine Jakobs. Wintersemester 2017/2018 Algorithmen und Programmierung Tutorium

Informatik II - Tutorium 12

Grundlagen der Informatik Übungen 1.Termin

Programmieren in C++

Einführung in die Programmierung für NF. Übung

Programmierkurs. Manfred Jackel

Java-Tutorium WS 09/10

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

Algorithmen und Datenstrukturen

Java Einführung Programmcode

Virtueller Campus. Virtueller Campus Horw mit interaktiver Steuerung. HowTo: Scripting-Komponente in Betrieb nehmen

Programmieren I. Entwicklungsumgebungen Eclipse, NetBeans und IntelliJ IDEA. Institut für Angewandte Informatik

Programmieren I. Administratives / Java Installation. Thomas Vetter, Brian Amberg, Andreas Forster. 21. September 2010 UNIVERSITÄT BASEL

cs106 Informatiklabor Teil 1: Java-Installation

0. Erste Schritte REM. Jürgen Mäter Arbeitsgruppe Modellierung und Simulation. Lehrstuhl für Informatik 4 TU Dortmund

Einführung in JAVA. Viele Höhen und Tiefen Java war schon einmal nahezu tot. Heute extrem weit verbreitet vom Supercomputer bis hin zum Handy.

Unterlagen zu: Das Datenanalysesystem SAS SS 2000

Installation einer C++ Entwicklungsumgebung unter Windows --- TDM-GCC und Eclipse installieren

Hello World in Java. Der Weg zum ersten Java-Programm

Vorkurs Informatik WiSe 17/18

Programmieren I. Entwicklungsumgebungen Eclipse, NetBeans und IntelliJ IDEA. Institut für Angewandte Informatik

Kapitel 02. Java was, wann, warum, wieso. Fachgebiet Knowledge Engineering Prof. Dr. Johannes Fürnkranz

Transkript:

Informatik II - Übung 01 Katja Wolff katja.wolff@inf.ethz.ch

Themen 1. Ein Algorithmus und seine Implementierung in Java 2. Java: Elementare Aspekte 3. Klassen und Referenzen 4. Syntaxanalyse und Compiler 5. Pakete in Java 6. Objektorientierung 7. Exceptions 8. Binärbäume als Zeigergeflechte 9. Binärsuche 10. Backtracking 11. Spielbäume 12. Rekursives Problemlösen 13. Komplexität von Algorithmen 14. Simulation 15. Heaps 16. Parallele Prozesse und Threads Katja Wolff 01.03.2017 2

Wie sieht eine Übungsstunde aus? 1) Fragen aus der Vorlesung Aufschreiben! 2) Praktische Dinge: Demos, Eclipse Tipps & Tricks, Coding style, Debugging, häufige Fehler, etc. 3) Besprechung Blatt n (heute: n = 0) 4) Ausblick Blatt n+1 Wichtig: Seid aktiv! Katja Wolff 01.03.2017 3

Abgabe der Übungen Bearbeitung der Übung in individuell Abgabe auf Codeboard bitte bis Mittwoch, 13:00 Uhr Automatische Prüfung eurer Abgaben bereits durch Codeboard Feedback durch mich auf Codeboard am darauffolgenden Dienstag Katja Wolff 01.03.2017 4

Weitere Hinweise Plagiate: Verboten! Abschreiben bringt nichts, es braucht sowieso niemand Punkte... Bestraft wird trotzdem: Vorladung beim Dekan Elektrotechnik und bei Prof. Mattern Nutzung externer Quellen (Internet, andere Studenten) erlaubt es muss nur kenntlich gemacht werden! Erfolgreiche Bearbeitung der Übungsaufgaben korreliert extrem mit dem Klausurergebnis, da in der Klausur unter anderem auch programmiert wird Katja Wolff 01.03.2017 5

Java-Installation http://www.oracle.com/technetwork/java/javase/downloads/index.html Java SE 8 JDK (Java Development Kit) Windows: Systemsteuerung environment variables Pfad C:/path_to_jdk-8.xx/bin; an den Anfang der Pfad Variable hinzufügen Test, ob Java installiert ist (und Angabe der Version): In der Kommandozeile (cmd) eingeben: java version Oder eingeben: javac Katja Wolff 01.03.2017 6

Java files.java files sind source code (was wir schreiben).class (Bytecode) files werden aus.java files vom Compiler erzeugt.jar files sind Bibliotheken Java source code Java bytecode Bytecode wird in einer virtuellen Machine (VM) interpretiert Plattformunabhängigkeit (PC, Server, Mobiltelefon, Linux, Windows, etc..) Browser mit integrierter VM Betriebssystem mit VM VM in speziellen VLSI-chip Computer Spiel-Konsole Mobiltelefon Waschmaschine Kreditkarte Katja Wolff 01.03.2017 7

Eclipse www.eclipse.org Katja Wolff 01.03.2017 8

Eclipse-View Run as Java Application Editor Mit CTRL+SHIFT+F kann man autoformatieren Konsole Katja Wolff 01.03.2017 9

Neues Java-Projekt 1 Bsp.: Entpacken von u0.zip nach D:\projects\U00_... 2 3 4 files in D:\projects\u0 wurden automatisch hinzugefügt Katja Wolff 01.03.2017 10

Neues JUnit4 TestCases 1 2 3 4 Rechtsklick New JUnitTestCase 5 Katja Wolff 01.03.2017 11

Debugging (lohnt sich!) Klick Ändere perspective für Debugging Katja Wolff 01.03.2017 12

Debugging (lohnt sich!) Debug as Java Application Breakpoint (Doppelklick auf Zeile) Konsole Katja Wolff 01.03.2017 13

Testing (lohnt sich ebenfalls!) Run Tests.java All tests passed Junit test methods Katja Wolff 01.03.2017 14

Javadoc Mit ALT+SHIFT+J kann man Javadoc hinzufügen Javadoc description Javadoc tab Katja Wolff 01.03.2017 15

Übungsblatt 0 Katja Wolff 01.03.2017 16

Übungsblatt 0 Aufgabe 1: HelloWorld.java a. Java installieren b. Programm auf Kommandozeile kompilieren und ausführen c. Eclipse Setup d. Codeboard ausprobieren Katja Wolff 01.03.2017 17

Übungsblatt 0 Aufgabe 2: Das erste Java-Programm (simple) Signum-Funktion in Eclipse und Codeboard Katja Wolff 01.03.2017 18

Übungsblatt 0 Aufgabe 3: Automatisiertes Testen Setup von JUnit4 In der Kommandozeile (painful) In Eclipse (ziemlich einfach) Testen der signum Funktion Aufgabe 4: Gerichtete Graphen 3 Kannen unterschiedlicher Größe (8l, 5l, 2l) Wein von einer Kanne in die andere umschütten Graph zeichnen, Zahl der nötigen Umschüttungen herausfinden Katja Wolff 01.03.2017 19

Aufgabe 4 Katja Wolff 01.03.2017 20

Aufgabe 4c) Maximale Anzahl von Umschüttungen: 6 (siehe Graph) Mittlere Anzahl von Umschüttungen: Katja Wolff 01.03.2017 21

Übungsblatt 1 Theorieaufgaben Katja Wolff 01.03.2017 22

Übungsblatt 1 Aufgabe 1: Altägyptische Multiplikation (AM) In Vorlesung besprochen (siehe Skript) Rekursiver Algorithmus für Berechnung von a * b (a,b: positive ganze Zahlen) Gesucht: Korrektheit und Terminierungsbeweis Katja Wolff 01.03.2017 23

Übungsblatt 1 Aufgabe 1: Altägyptische Multiplikation (AM) a) Testet Induktion über a b) Terminiert der Algorithmus? Beweis? c) Nachdenken mit kleinstem Fall b=0 Katja Wolff 01.03.2017 24

Übungsblatt 1 Aufgabe 2: Laufzeitkomplexität a) Implementierung der AM gegeben. Aufrufe von den Funktionen gerade, verdopple, halbiere zählen b) Aufwandabschätzung einer einzigen Instanz von f(int a, int b) Resultat soll ein Ausdruck von a und b sein c) Gesamtzahl aller Methodenaufrufe von f(int a, int b) unter Verwendung der Resultate aus Aufgabe b. Wichtig: Wie oft wird die Rekursion aufgerufen? Katja Wolff 01.03.2017 25

Übungsblatt 1 Aufgabe 3: Überprüfung von Benutzereingaben Implementierung der AM gegeben Falsche Eingaben sollen Exceptions hervorrufen Fehler sollen mit Hilfe von UnitTests gefunden werden Einführung in JavaDoc (ALT+SHIFT+J + Javadoc Tab) In mult Methode throw new IllegalArgumentException( ) Katja Wolff 01.03.2017 26

Danke Fragen?