informatik ii ubung 1 - lec.inf.ethz.ch · ablauf mo di mi do fr sa so mo di mi do fr sa so ausgabe...
TRANSCRIPT
![Page 1: Informatik II Ubung 1 - lec.inf.ethz.ch · Ablauf Mo Di Mi Do Fr Sa So Mo Di Mi Do Fr Sa So Ausgabe Vorbesprechung Abgabe Nachbesprechung V Ü V Ü Übungsblattausgabe zur Vorlesung](https://reader030.vdokument.com/reader030/viewer/2022041201/5d46d7ad88c9933a1f8ba532/html5/thumbnails/1.jpg)
Informatik II
Ubung 1
Giuseppe Accaputo, Felix Friedrich, Patrick Gruntz, Tobias Klenze, MaxRosmannek, David Sidler, Thilo Weghorn
FS 2017
1
![Page 2: Informatik II Ubung 1 - lec.inf.ethz.ch · Ablauf Mo Di Mi Do Fr Sa So Mo Di Mi Do Fr Sa So Ausgabe Vorbesprechung Abgabe Nachbesprechung V Ü V Ü Übungsblattausgabe zur Vorlesung](https://reader030.vdokument.com/reader030/viewer/2022041201/5d46d7ad88c9933a1f8ba532/html5/thumbnails/2.jpg)
Heutiges Programm
1 Ablauf der Übungen
2 Wiederholung der wichtigsten Begriffe
2
![Page 3: Informatik II Ubung 1 - lec.inf.ethz.ch · Ablauf Mo Di Mi Do Fr Sa So Mo Di Mi Do Fr Sa So Ausgabe Vorbesprechung Abgabe Nachbesprechung V Ü V Ü Übungsblattausgabe zur Vorlesung](https://reader030.vdokument.com/reader030/viewer/2022041201/5d46d7ad88c9933a1f8ba532/html5/thumbnails/3.jpg)
AblaufMo Di Mi Do Fr Sa So Mo Di Mi Do Fr Sa So
Ausgabe Vorbesprechung Abgabe Nachbesprechung
V VÜ Ü
Übungsblattausgabe zur Vorlesung (online).Vorbesprechung am folgenden Donnerstag. Möglichkeit, Fragen zur Vorlesungzu stellen!Bearbeitung der Übung bis spätestens am Dienstag (23:59) darauf.Nachbesprechung der Übung am Donnerstag. Feeback zu den Abgaben (auchonline) innerhalb einer Woche nach Nachbesprechung.
3
![Page 4: Informatik II Ubung 1 - lec.inf.ethz.ch · Ablauf Mo Di Mi Do Fr Sa So Mo Di Mi Do Fr Sa So Ausgabe Vorbesprechung Abgabe Nachbesprechung V Ü V Ü Übungsblattausgabe zur Vorlesung](https://reader030.vdokument.com/reader030/viewer/2022041201/5d46d7ad88c9933a1f8ba532/html5/thumbnails/4.jpg)
Abgabe mit codeboard
Account erstellenEinloggenÜbungen lösen und einschicken
4
![Page 5: Informatik II Ubung 1 - lec.inf.ethz.ch · Ablauf Mo Di Mi Do Fr Sa So Mo Di Mi Do Fr Sa So Ausgabe Vorbesprechung Abgabe Nachbesprechung V Ü V Ü Übungsblattausgabe zur Vorlesung](https://reader030.vdokument.com/reader030/viewer/2022041201/5d46d7ad88c9933a1f8ba532/html5/thumbnails/5.jpg)
Codeboard @ETH
Codeboard besteht aus zwei unabhängigen Systemen, diemiteinander kommunizieren:
Das ETH Abgabesystem:Ermöglicht es uns, ihre Aufgabenzu bewerten
Die Online IDE: DieProgrammierumgebung
User
ETH Abgabesystemhttp://codeboard.ethz.ch
Login mit ETH Credentials
Codeboard.iohttp://codeboard.io
Login mit Codeboard.io Credentials
5
![Page 6: Informatik II Ubung 1 - lec.inf.ethz.ch · Ablauf Mo Di Mi Do Fr Sa So Mo Di Mi Do Fr Sa So Ausgabe Vorbesprechung Abgabe Nachbesprechung V Ü V Ü Übungsblattausgabe zur Vorlesung](https://reader030.vdokument.com/reader030/viewer/2022041201/5d46d7ad88c9933a1f8ba532/html5/thumbnails/6.jpg)
CodeboardCodeboard ist eine Online-IDE: Programmieren im Browser!
Falls vorhanden, bringenSie ihren Laptop/Tablet/...mit in den Unterricht.
Sie können direkt in derVorlesung Beispieleausprobieren, ohne dassSie irgendwelche Toolsinstallieren müssen.
6
![Page 7: Informatik II Ubung 1 - lec.inf.ethz.ch · Ablauf Mo Di Mi Do Fr Sa So Mo Di Mi Do Fr Sa So Ausgabe Vorbesprechung Abgabe Nachbesprechung V Ü V Ü Übungsblattausgabe zur Vorlesung](https://reader030.vdokument.com/reader030/viewer/2022041201/5d46d7ad88c9933a1f8ba532/html5/thumbnails/7.jpg)
Codeboard @ETH
Codeboard besteht aus zwei unabhängigen Systemen, diemiteinander kommunizieren:
Das ETH Abgabesystem:Ermöglicht es uns, ihre Aufgabenzu bewerten
Die Online IDE: DieProgrammierumgebung
User
ETH Abgabesystemhttp://codeboard.ethz.ch
Login mit ETH Credentials
Codeboard.iohttp://codeboard.io
Login mit Codeboard.io Credentials
7
![Page 8: Informatik II Ubung 1 - lec.inf.ethz.ch · Ablauf Mo Di Mi Do Fr Sa So Mo Di Mi Do Fr Sa So Ausgabe Vorbesprechung Abgabe Nachbesprechung V Ü V Ü Übungsblattausgabe zur Vorlesung](https://reader030.vdokument.com/reader030/viewer/2022041201/5d46d7ad88c9933a1f8ba532/html5/thumbnails/8.jpg)
Codeboard
Codeboard.io RegistrierungGehen Sie auf http://codeboard.io und erstellen Sie dort einKonto, bleiben Sie am besten eingeloggt.
Einschreibung in ÜbungsgruppenGehen Sie auf http://codeboard.ethz.ch/ifbaug2 undschreiben Sie sich dort in eine Übungsgruppe ein.
8
![Page 9: Informatik II Ubung 1 - lec.inf.ethz.ch · Ablauf Mo Di Mi Do Fr Sa So Mo Di Mi Do Fr Sa So Ausgabe Vorbesprechung Abgabe Nachbesprechung V Ü V Ü Übungsblattausgabe zur Vorlesung](https://reader030.vdokument.com/reader030/viewer/2022041201/5d46d7ad88c9933a1f8ba532/html5/thumbnails/9.jpg)
Codeboard.io RegistrierungFalls Sie noch keinen Codeboard.io Account haben ...
Wir verwenden die Online IDECodeboard.io
Erstellen Sie dort einenAccount, um Ihren Fortschrittabzuspeichern und späterSubmissions anzuschauenAnmeldedaten können beliebiggewählt werden! Verwenden Sienicht das ETH Passwort.
9
![Page 10: Informatik II Ubung 1 - lec.inf.ethz.ch · Ablauf Mo Di Mi Do Fr Sa So Mo Di Mi Do Fr Sa So Ausgabe Vorbesprechung Abgabe Nachbesprechung V Ü V Ü Übungsblattausgabe zur Vorlesung](https://reader030.vdokument.com/reader030/viewer/2022041201/5d46d7ad88c9933a1f8ba532/html5/thumbnails/10.jpg)
Codeboard.io RegistrierungFalls Sie noch keinen Codeboard.io Account haben ...
Wir verwenden die Online IDECodeboard.ioErstellen Sie dort einenAccount, um Ihren Fortschrittabzuspeichern und späterSubmissions anzuschauen
Anmeldedaten können beliebiggewählt werden! Verwenden Sienicht das ETH Passwort.
9
![Page 11: Informatik II Ubung 1 - lec.inf.ethz.ch · Ablauf Mo Di Mi Do Fr Sa So Mo Di Mi Do Fr Sa So Ausgabe Vorbesprechung Abgabe Nachbesprechung V Ü V Ü Übungsblattausgabe zur Vorlesung](https://reader030.vdokument.com/reader030/viewer/2022041201/5d46d7ad88c9933a1f8ba532/html5/thumbnails/11.jpg)
Codeboard.io RegistrierungFalls Sie noch keinen Codeboard.io Account haben ...
Wir verwenden die Online IDECodeboard.ioErstellen Sie dort einenAccount, um Ihren Fortschrittabzuspeichern und späterSubmissions anzuschauenAnmeldedaten können beliebiggewählt werden! Verwenden Sienicht das ETH Passwort.
9
![Page 12: Informatik II Ubung 1 - lec.inf.ethz.ch · Ablauf Mo Di Mi Do Fr Sa So Mo Di Mi Do Fr Sa So Ausgabe Vorbesprechung Abgabe Nachbesprechung V Ü V Ü Übungsblattausgabe zur Vorlesung](https://reader030.vdokument.com/reader030/viewer/2022041201/5d46d7ad88c9933a1f8ba532/html5/thumbnails/12.jpg)
Codeboard.io LoginFalls Sie schon einen Account haben, loggen Sie sich ein:
10
![Page 13: Informatik II Ubung 1 - lec.inf.ethz.ch · Ablauf Mo Di Mi Do Fr Sa So Mo Di Mi Do Fr Sa So Ausgabe Vorbesprechung Abgabe Nachbesprechung V Ü V Ü Übungsblattausgabe zur Vorlesung](https://reader030.vdokument.com/reader030/viewer/2022041201/5d46d7ad88c9933a1f8ba532/html5/thumbnails/13.jpg)
Einschreibung in Ubungsgruppen - IBesuchen Sie http://codeboard.ethz.ch/ifbaug2
Loggen Sie sich mit Ihrem nethz Account ein.
11
![Page 14: Informatik II Ubung 1 - lec.inf.ethz.ch · Ablauf Mo Di Mi Do Fr Sa So Mo Di Mi Do Fr Sa So Ausgabe Vorbesprechung Abgabe Nachbesprechung V Ü V Ü Übungsblattausgabe zur Vorlesung](https://reader030.vdokument.com/reader030/viewer/2022041201/5d46d7ad88c9933a1f8ba532/html5/thumbnails/14.jpg)
Einschreibung in Ubungsgruppen - IISchreiben Sie sich in diesem Dialog in eine Übungsgruppe ein.
12
![Page 15: Informatik II Ubung 1 - lec.inf.ethz.ch · Ablauf Mo Di Mi Do Fr Sa So Mo Di Mi Do Fr Sa So Ausgabe Vorbesprechung Abgabe Nachbesprechung V Ü V Ü Übungsblattausgabe zur Vorlesung](https://reader030.vdokument.com/reader030/viewer/2022041201/5d46d7ad88c9933a1f8ba532/html5/thumbnails/15.jpg)
Die erste UbungSie sind nun eingeschrieben und die erste Übung ist geladen.Folgen Sie den Anweisungen in der gelben Box. Das Übungsblattauf der Kurshomepage enthält weitere Anweisungen undErklärungen.
13
![Page 16: Informatik II Ubung 1 - lec.inf.ethz.ch · Ablauf Mo Di Mi Do Fr Sa So Mo Di Mi Do Fr Sa So Ausgabe Vorbesprechung Abgabe Nachbesprechung V Ü V Ü Übungsblattausgabe zur Vorlesung](https://reader030.vdokument.com/reader030/viewer/2022041201/5d46d7ad88c9933a1f8ba532/html5/thumbnails/16.jpg)
Die erste Ubung - Codeboard.io Login
Falls Sie diese Nachricht sehen, klicken Sie auf Sign in now undmelden Sie sich dort mit ihrem Codeboard.io Account ein.
14
![Page 17: Informatik II Ubung 1 - lec.inf.ethz.ch · Ablauf Mo Di Mi Do Fr Sa So Mo Di Mi Do Fr Sa So Ausgabe Vorbesprechung Abgabe Nachbesprechung V Ü V Ü Übungsblattausgabe zur Vorlesung](https://reader030.vdokument.com/reader030/viewer/2022041201/5d46d7ad88c9933a1f8ba532/html5/thumbnails/17.jpg)
Die erste Ubung - Fortschritt speichern!
Achtung! Speichern Sie ihrenFortschritt regelmässig ab. Sokönnen Sie jederzeit an einem an-deren Ort weiterarbeiten.
15
![Page 18: Informatik II Ubung 1 - lec.inf.ethz.ch · Ablauf Mo Di Mi Do Fr Sa So Mo Di Mi Do Fr Sa So Ausgabe Vorbesprechung Abgabe Nachbesprechung V Ü V Ü Übungsblattausgabe zur Vorlesung](https://reader030.vdokument.com/reader030/viewer/2022041201/5d46d7ad88c9933a1f8ba532/html5/thumbnails/18.jpg)
Algorithmus
Algorithmus: wohldefinierte Berechnungsvorschrift, welche ausEingabedaten (input) Ausgabedaten (output) berechnet.
16
![Page 19: Informatik II Ubung 1 - lec.inf.ethz.ch · Ablauf Mo Di Mi Do Fr Sa So Mo Di Mi Do Fr Sa So Ausgabe Vorbesprechung Abgabe Nachbesprechung V Ü V Ü Übungsblattausgabe zur Vorlesung](https://reader030.vdokument.com/reader030/viewer/2022041201/5d46d7ad88c9933a1f8ba532/html5/thumbnails/19.jpg)
Beispielproblem
Input : Eine Folge von n Zahlen (a1, a2, . . . , an)
Output : Eine Permutation (a′1, a′2, . . . , a
′n) der Folge (ai)1≤i≤n, so dass
a′1 ≤ a′2 ≤ · · · ≤ a′n
Mögliche Eingaben(1, 7, 3), (15, 13, 12,−0.5), (1) . . .
Jedes Beispiel erzeugt eine Probleminstanz.
17
![Page 20: Informatik II Ubung 1 - lec.inf.ethz.ch · Ablauf Mo Di Mi Do Fr Sa So Mo Di Mi Do Fr Sa So Ausgabe Vorbesprechung Abgabe Nachbesprechung V Ü V Ü Übungsblattausgabe zur Vorlesung](https://reader030.vdokument.com/reader030/viewer/2022041201/5d46d7ad88c9933a1f8ba532/html5/thumbnails/20.jpg)
Beispielproblem
Input : Eine Folge von n Zahlen (a1, a2, . . . , an)Output : Eine Permutation (a′1, a
′2, . . . , a
′n) der Folge (ai)1≤i≤n, so dass
a′1 ≤ a′2 ≤ · · · ≤ a′n
Mögliche Eingaben(1, 7, 3), (15, 13, 12,−0.5), (1) . . .
Jedes Beispiel erzeugt eine Probleminstanz.
17
![Page 21: Informatik II Ubung 1 - lec.inf.ethz.ch · Ablauf Mo Di Mi Do Fr Sa So Mo Di Mi Do Fr Sa So Ausgabe Vorbesprechung Abgabe Nachbesprechung V Ü V Ü Übungsblattausgabe zur Vorlesung](https://reader030.vdokument.com/reader030/viewer/2022041201/5d46d7ad88c9933a1f8ba532/html5/thumbnails/21.jpg)
Beispielproblem
Input : Eine Folge von n Zahlen (a1, a2, . . . , an)Output : Eine Permutation (a′1, a
′2, . . . , a
′n) der Folge (ai)1≤i≤n, so dass
a′1 ≤ a′2 ≤ · · · ≤ a′n
Mögliche Eingaben(1, 7, 3), (15, 13, 12,−0.5), (1) . . .
Jedes Beispiel erzeugt eine Probleminstanz.
17
![Page 22: Informatik II Ubung 1 - lec.inf.ethz.ch · Ablauf Mo Di Mi Do Fr Sa So Mo Di Mi Do Fr Sa So Ausgabe Vorbesprechung Abgabe Nachbesprechung V Ü V Ü Übungsblattausgabe zur Vorlesung](https://reader030.vdokument.com/reader030/viewer/2022041201/5d46d7ad88c9933a1f8ba532/html5/thumbnails/22.jpg)
Beispielproblem
Input : Eine Folge von n Zahlen (a1, a2, . . . , an)Output : Eine Permutation (a′1, a
′2, . . . , a
′n) der Folge (ai)1≤i≤n, so dass
a′1 ≤ a′2 ≤ · · · ≤ a′n
Mögliche Eingaben(1, 7, 3), (15, 13, 12,−0.5), (1) . . .
Jedes Beispiel erzeugt eine Probleminstanz.
17
![Page 23: Informatik II Ubung 1 - lec.inf.ethz.ch · Ablauf Mo Di Mi Do Fr Sa So Mo Di Mi Do Fr Sa So Ausgabe Vorbesprechung Abgabe Nachbesprechung V Ü V Ü Übungsblattausgabe zur Vorlesung](https://reader030.vdokument.com/reader030/viewer/2022041201/5d46d7ad88c9933a1f8ba532/html5/thumbnails/23.jpg)
Euklidischer Algorithmus: Java vs. Pascal
public class Euclidean {
public static void main(String[] args){int a = 24;int b = 20;while (b != 0) {
int h = a % b; // modulo!a = b;b = h;
}System.out.println("ggt(24,20)=" + a);
}}
program Euklid;var a, b, h: integer ;begin
a := 24;b := 20;while b <> 0 do begin
h := a mod b;a := b;b := h;
end;writeln( ’ggt(24,20)=’,a :5);
end.
18
![Page 24: Informatik II Ubung 1 - lec.inf.ethz.ch · Ablauf Mo Di Mi Do Fr Sa So Mo Di Mi Do Fr Sa So Ausgabe Vorbesprechung Abgabe Nachbesprechung V Ü V Ü Übungsblattausgabe zur Vorlesung](https://reader030.vdokument.com/reader030/viewer/2022041201/5d46d7ad88c9933a1f8ba532/html5/thumbnails/24.jpg)
Mit einer Funktion (Methode)public class Euclidean {
// PRE: a, b >= 0// POST: gibt GGT(a,b) zurueckstatic int ggt(int a, int b){
while (b != 0) {int h = a % b;a = b;b = h;
}return a;
}public static void main(String[] args){
System.out.println("ggt(24,20)= " + ggt(24,20));}
}19
![Page 25: Informatik II Ubung 1 - lec.inf.ethz.ch · Ablauf Mo Di Mi Do Fr Sa So Mo Di Mi Do Fr Sa So Ausgabe Vorbesprechung Abgabe Nachbesprechung V Ü V Ü Übungsblattausgabe zur Vorlesung](https://reader030.vdokument.com/reader030/viewer/2022041201/5d46d7ad88c9933a1f8ba532/html5/thumbnails/25.jpg)
Mit Eingabe
import java.util.Scanner;
public class Euclidean {
static int ggt(int a, int b){ ... } // wie oben
public static void main(String[] args){Scanner input = new Scanner(System.in);int a = input.nextInt();int b = input.nextInt();System.out.println("ggt(" + a + "," + b + ")= " + ggt(a,b));
}}
20
![Page 26: Informatik II Ubung 1 - lec.inf.ethz.ch · Ablauf Mo Di Mi Do Fr Sa So Mo Di Mi Do Fr Sa So Ausgabe Vorbesprechung Abgabe Nachbesprechung V Ü V Ü Übungsblattausgabe zur Vorlesung](https://reader030.vdokument.com/reader030/viewer/2022041201/5d46d7ad88c9933a1f8ba532/html5/thumbnails/26.jpg)
Zeichenketten (Strings)Strings sind Objekte in Java.
Zuweisung eines Stringliterals:String hello = "Hallo Leute";
Stringlänge:int len = hello.length();
Elementzugriff1
char c = hello.charAt(5);
VerkettungString helloLong = hello + ". Alles wird gut.";1Nur lesend. Strings sind unveränderlich
21
![Page 27: Informatik II Ubung 1 - lec.inf.ethz.ch · Ablauf Mo Di Mi Do Fr Sa So Mo Di Mi Do Fr Sa So Ausgabe Vorbesprechung Abgabe Nachbesprechung V Ü V Ü Übungsblattausgabe zur Vorlesung](https://reader030.vdokument.com/reader030/viewer/2022041201/5d46d7ad88c9933a1f8ba532/html5/thumbnails/27.jpg)
Fragen oder Anregungen?
22