• Keine Ergebnisse gefunden

Übungsstunde 1

N/A
N/A
Protected

Academic year: 2022

Aktie "Übungsstunde 1"

Copied!
31
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Übungsstunde 1

Einführung in die Programmierung

(2)

Organisatorisches

Mein Name: [TODO]

E-Mail-Adresse für Fragen zu den Übungen: [TODO]

Übungsabgabe immer via SVN

Individuelles Feedback zu einzelnen Aufgaben (vorerst) via E-Mail Musterlösung wird am selben Tag der Abgabe in SVN veröffentlicht

● Separates Projekt uX-sol; gleich auschecken wie Vorlage

(3)

Nachbesprechung Übungen 0 & 1

(4)

Fragen zu Eclipse oder SVN?

(Demo)

Frühere Version der eigenen Lösung (oder ursprüngliche Vorlage) auschecken:

1. Auf Projekt rechtsklicken → Team → Show History 2. In History-Ansicht gewünschte Version finden

3. Mit Klick & Shift-Klick alle späteren Versionen (ohne gewünschte) auswählen 4. Rechtsklick → Revert Changes from Selected Revisions

5. Falls gewünscht, Änderungen committen

(5)

Lösung Übung 1, Aufgabe 3

/*

* Author: Maximiliana Muster

* für Einführung in die Programmierung */

public class HelloProgrammer {

public static void main(String[] args) {

System.out.println("Hello, my name is Max!");

} }

(6)

Lösung Übung 1, Aufgabe 5

(7)

Lösung Übung 1, Aufgabe 5

(8)

Lösung Übung 1, Aufgabe 5

(9)

Lösung Übung 1, Aufgabe 5

(10)

Lösung Übung 1, Aufgabe 5

(11)

Vorbesprechung Übung 2

(12)
(13)
(14)
(15)
(16)

Zusatzübungen EBNF

(17)

Zusatzübung EBNF

(18)

Zusatzübung EBNF

Lokomotive (L), Speisewagen (S), Fahrrad & Gepäckwagen (F), Grossraumwagen (G), Steuerwagen (Z)

(19)

Zusatzübung EBNF

Lokomotive (L), Speisewagen (S), Fahrrad & Gepäckwagen (F), Grossraumwagen (G), Steuerwagen (Z)

fg <= { FF }

gserie <= [G] [G] [G] [G] S

zug <= { L } L { fg | gserie } Z

(20)

Zusatzübung EBNF

(Il)legaler Zug?

● LZ

● LLLFFZ

● LGGSFFGSFFFFZ

● LLFF

● LGGGGFFZ

● LGGSFFFZ

● LGGGGGSZ

fg <= { FF }

gserie <= [G] [G] [G] [G] S

zug <= { L } L { fg | gserie } Z

legal legal legal illegal illegal illegal illegal

(21)

Zusatzübung EBNF

Welche Symbole werden für

sym <= A | B C D | E

sym <= A { B | C D }

sym <= A { B | C } | A B | A C als legal erkannt?

A, BCD, E

A, AB, ACD, ABCD, ABB, … A, AB, AC, ABB, ABC, ACB, ...

(22)

Zusatzübung EBNF

Wie müsste

sym <= A { B | C } | A B | A C

geändert werden, wenn man alle Symbole wie bisher ausser A als legal erkennen möchte?

sym <= A B { B | C } | A C { B | C }

(23)

Zusatzübung EBNF

Vereinfachen Sie diese Regeln

r1 <= A | B | A

r2 <= [ [ A ] ]

r3 <= [ A [ A [ A ] ] ]

r4 <= A | AA | AAA | AAAA

“einfacher” = RHS ist kürzer oder enthält weniger tief geschachtelte Ausdrücke.

r1 <= A | B r2 <= [A]

r3 <= [A] [A] [A]

r4 <= A [A] [A] [A]

(24)

Zusatzübungen Java

(25)

Zusatzübung Java Strings

System.out.println("Der Kontostand ist 7'100,00 CHF");

System.out.println(

"Der String \"\" ist ein leeres Symbol.");

System.out.println("\\'\"\\\\\"");

Was wird ausgegeben?

Der Kontostand ist 7'100,00 CHF

Der String "" ist ein leeres Symbol.

\'"\\"

(26)

Zusatzübung Java Arithmetik

1) 13 / 5 + 12 / 4 2) 3 * 4 + 17 / 2

3) -(1 + 2 * 3 + (1 + 2) * 3) 4) 32 % 5 + 16 % 3

5) 2.5 * 2 + 17 / 4 6) 4.5 / 3 / 2 + 1 7) "ETH" + 20 + 16 8) 20 + 16 + "ETH"

9) 1 + 7 / 2 * 2.0 10) 56 / 3 / 2.0

Was ergeben diese arithmetischen Ausdrücke?

5 20 -16 3 9.0 1.75 ETH2016 36ETH 7.0 9.0

(27)

Zusatzübung Java Variablen

1) note : 4.0;

2) int note = 4.0;

3) double note = 4.0;

4) 4.0 = note;

5) note = double 4.0;

6) note = 4.0;

Was ist der richtige Weg, eine Variable “note” für reelle Zahlen mit dem Wert 4.0 zu initialisieren?

Was für einen Typ brauchen wir in Java um 4.0 darstellen zu können?

(28)

Zusatzübung Java Anweisungen

1) note : 5.5;

2) set note = 5.5;

3) 5.5 = note;

4) note = 5.5;

5) double note = 5.5;

6) note := 5.5;

7) note <= 5.5;

Wie können Sie später die Note verbessern, also “note” auf 5.5 setzen?

(29)

Zusatzübung Java Anweisungen

1) note = 0.25;

2) note <-- 0.25;

3) note = note + 0.25;

4) 0.255 + note = note;

5) note + 0.25;

6) note := note + 0.25;

7) note == note + 0.25;

Wie würden Sie eine Bonusverbesserung der Note um 0.25 implementieren?

(30)

Zusatzaufgabe Java Anweisungen

int a = 5;

int b = 10;

int c = b;

a = a + 2;

b = b - 2;

c = c + a;

Welche Werte haben a, b, c am Ende dieser Anweisungen?

a = 7 b = 8 c = 17

(31)

Zusatzaufgabe Java Anweisungen

int i = 2;

int j = 3;

int k = 4;

int x = i + j + k;

i = x - i - j;

j = x - j - k;

k = x - i - k;

Welche Werte haben x, i, j, k am Ende dieser Anweisungen?

x = 9 i = 4 j = 2 k = 1

Referenzen

ÄHNLICHE DOKUMENTE

Gioele Zardini Lineare Algebra I/II PVK FS 2018.. Wahr/Falsch Aufgaben:

Konstruieren Sie das Frequency-Reuse-Pattern für einen Zelldistanzvektor d(C1,C2)=(2,2) in der gegebenen Hexagonstruktur. Geben Sie auch an, wie viele Zellen Sie

Die Richtantenne hat einen Antennengewinn von 20dB. In wieviel Prozent aller Richtun- gen strahlt diese Antenne ab?.. Drahtlose Kommunikation – WS 2014/15 – Blatt1

Drahtlose Kommunikation – WS 2014/15 – Blatt 2 3/4 (1) Inwiefern verändert sich die Welle, wenn sie an der Wand reflektiert wird?. (2) Berechnen Sie den Phasenversatz

Bei Multi-Hop-Kommunikation müssen nicht alle Knoten in Empfangsreichweite aller ande- ren Knoten sein. Die Nachrichten können auch von Knoten zu Knoten weitergereicht wer- den, bis

Nehmen Sie Two-Ray-Ground an. Der Abstand d zwischen Sender und Empfänger geht gegen Unendlich. Beide haben aber einen konstanten Abstand zum Boden. Nimmt die Phasenverschiebung

Für welche Ener- gien E beschreibt eine Punktmasse im Kepler schen Zentralkraftfeld geschlos- sene Bahnen. Wie groß muß die Energie der Punktmasse mindestens sein, um eine

Erhaltet ihr oder eure Eltern nach 48h keine Rückmeldung, kontaktiert mich bitte erneut, da es leider vorkommen kann, dass ich Mails übersehe. Ich bitte das