Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ classDiagram
## Hinweis zur Klasse _CardsDealer_

Die Methode `void dealCards(amount: int)` soll den beiden Spielern die
eingehende Anzahl an zufälligen Karten des Decks austeilen
eingehende Anzahl an zufälligen Karten des Decks austeilen.

## Hinweis zur Klasse _CardsReader_

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ classDiagram
-cashier: Cashier
+CashierSystem(name: String)
+addGoods(goods: Goods) void
+addCashier(cahier: Cashier) void
+addCashier(cashier: Cashier) void
+login(id: int) void
+createShoppingCart() void
+addItem(id: int, amount: int) void
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ classDiagram
- Die Methode `void moveUp()` soll den Y-Wert der Position inkrementieren
- Die Methode `void moveDown()` soll den Y-Wert der Position dekrementieren
- Die Methode `void moveLeft()` soll den X-Wert der Position dekrementieren
- Die Methode `void moveRigth()` soll den X-Wert der Position inkrementieren
- Die Methode `void moveRight()` soll den X-Wert der Position inkrementieren

## Hinweis zur Klasse _CreaturesReader_

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ classDiagram
-name: String #123;final#125;
-age: int #123;final#125;
-gender: char #123;final#125;
+Player(name: String, age: int, gender: char )
+Person(name: String, age: int, gender: char)
}
```

Expand All @@ -46,7 +46,7 @@ classDiagram

## Hinweise zur Klasse _GiftBag_

- Die Methode `void addPresent(present: present)` soll der Geschenkeliste
- Die Methode `void addPresent(present: Present)` soll der Geschenkeliste
(`presents`) das eingehende Geschenk hinzufügen
- Die Methode `Present getMostExpensivePresent()` soll das teuerste Geschenk
zurückgeben
Original file line number Diff line number Diff line change
Expand Up @@ -61,13 +61,13 @@ classDiagram

- Die Methode `String parkIn(car: Car, parkingSpotNumber: int)` soll das
eingehende Fahrzeug dem Parkplatz mit der eingehenden Parkplatznummer zuweisen
und eine enstprechende Erfolgsmeldung zurückgegeben. Für den Fall, dass der
und eine entsprechende Erfolgsmeldung zurückgegeben. Für den Fall, dass der
Parkplatz bereits besetzt ist, oder dass es sich bei dem eingehenden Fahrzeug
um ein Auto handelt, der Parkplatz aber nur für Busse ist, oder dass der
Parkplatz zu klein ist, soll eine entsprechende Fehlermeldung zurückgegeben
werden
- Die Methode `String parkOut(car: Car)` soll das eingehende Fahrzeug
"ausparken" und eine enstsprechende Erfolgsmeldung zurückgeben. Für den Fall,
"ausparken" und eine entsprechende Erfolgsmeldung zurückgeben. Für den Fall,
dass das Fahrzeug in der Tiefgarage nicht vorhanden ist, soll eine
entsprechende Fehlermeldung zurückgegeben werden
- Die Methode `int getNextFreeParkingSpotNumber()` soll die Nummer des nächsten
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ classDiagram
KNIGHT, PIRATE, VIKING,...
}
class GameTokens {
+getGameTokens(file: File) List~gameToken~$
+getGameTokens(file: File) List~GameToken~$
}
```

Expand All @@ -48,8 +48,8 @@ classDiagram

## Hinweis zur Klasse _Player_

Die Methode `void addGameToken(gameToken: gameToken)` soll den Spielfiguren die
eingehene Spielfigur hinzufügen.
Die Methode `void addGameToken(gameToken: GameToken)` soll den Spielfiguren die
eingehende Spielfigur hinzufügen.

## Hinweis zur Klasse _GameTokens_

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ classDiagram
- So nicht anders angegeben, sollen Konstruktoren, Setter, Getter sowie die
Object-Methoden wie gewohnt implementiert werden

## Hinweis zur Klasse _StudentCourse_
## Hinweis zur Klasse _StudyCourse_

Die Methode `Lecture getLectureWithMostCreditPoints()` soll die Vorlesung mit
den meisten ECTS-Punkten zurückgeben.
Original file line number Diff line number Diff line change
Expand Up @@ -61,8 +61,8 @@ Buchungsdatum auf das aktuelle Datum setzen.

## Hinweise zur Klasse _Travel_

- Die Methode `void booking: Booking)` soll den Buchungen die eingehende Buchung
hinzufügen
- Die Methode `boolean addBooking(booking: Booking)` soll den Buchungen die
eingehende Buchung hinzufügen
- Die Methode `double getTotalTravelCostsInEuro()` soll die Gesamtkosten aller
Buchungen der Reise in Euro zurückgeben
- Die Methode `List<Flight> getFlights()` soll alle Flüge der Reise zurückgeben
Original file line number Diff line number Diff line change
Expand Up @@ -27,18 +27,18 @@ classDiagram
class Animal {
-description: String #123;final#125;
-sizeInM: double #123;final#125;
-weigthInKg: double #123;final#125;
+Animal(description: String, sizeInM: double, weigthInKg: double)
-weightInKg: double #123;final#125;
+Animal(description: String, sizeInM: double, weightInKg: double)
}

class Bird {
+Bird(description: String, sizeInM: double, weigthInKg: double)
+Bird(description: String, sizeInM: double, weightInKg: double)
+fly() void
}

class Fish {
-color: String #123;final#125;
+Fish(description: String, sizeInM: double, weigthInKg: double, color: String)
+Fish(description: String, sizeInM: double, weightInKg: double, color: String)
+swim() void
}
```
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ Wahrscheinlichkeit einen Wert zwischen 1 und 6 zurückgeben.
## Spielablauf

- Das Spiel soll aus beliebig vielen Runden bestehen
- Zu Beginn jeder Runde sollen alle Würfen geworfen werden
- Zu Beginn jeder Runde sollen alle Würfel geworfen werden
- Anschließend soll der Spieler eingeben können, ob der Wurfwert aller Würfel
größer 17 ist
- Für einen richtigen Tipp soll der Spieler einen Punkt bekommen
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -64,9 +64,8 @@ Wert 10 initialisieren.

## Hinweise zur Klasse _Game_

- Der Konstruktor soll die Spieler mit Hilfe der eingehenden Namen
initialisieren und die Würfelliste mit Hilfe der eingehenden Anzahl Würfel
initialisieren
- Der Konstruktor soll die Spieler mithilfe der eingehenden Namen initialisieren
und die Würfelliste mithilfe der eingehenden Anzahl Würfel initialisieren
- Die Methode `void play()` soll den Spielablauf abbilden
- Die Methode `void move(attacker: Player, defender: Player)` soll einen
Spielzug abbilden
Expand All @@ -83,7 +82,7 @@ Wert 10 initialisieren.

## Ablauf eines Spielzugs

- Zu Beginn eines Spielzugs sollen beide Spieler abwechselnd alle Würfen werfen
- Zu Beginn eines Spielzugs sollen beide Spieler abwechselnd alle Würfel werfen
- Anschließend sollen für den angreifenden Spieler die Anzahl geworfener
Schwerter und für der verteidigende Spieler die Anzahl geworfener Schilde
ermittelt werden
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ classDiagram
}
class Player {
-name: String #123;final#125;
-int: points
-points: int
+Player(name: String)
+increasePoints(value: int) void
}
Expand All @@ -52,7 +52,7 @@ Wahrscheinlichkeit ein Symbol (Schere, Stein oder Papier) zurückgeben.

- Das Spiel soll aus 5 Runden bestehen
- Zu Beginn des Spiel sollen die beiden Spieler ihre Namen eingeben können
- Zu Beginn jeder Runde sollen die Spieler abwechselnd den Würfel werden. Der
- Zu Beginn jeder Runde sollen die Spieler abwechselnd den Würfel werfen. Der
Spieler mit dem besseren Wurfwert soll einen Punkt bekommen. Für den Fall,
dass beide Spieler den gleichen Wurfwert erzielen, soll keiner einen Punkt
bekommen. Für den Wurfwert soll gelten: Schere schlägt Papier, Papier schlägt
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
---
title: Würfelspiel 17
description: ''
tags: [console-applications, oo]
---

Erstelle die ausführbare Klasse `ExamTask02` anhand des abgebildeten
Klassendiagramms. Orientiere Dich bei der Konsolenausgabe am abgebildeten
Beispiel.

## Klassendiagramm

```mermaid
classDiagram
ExamTask02 o-- Player
Player o-- Dice
class ExamTask02 {
-player1: Player$
-player2: Player$
-scanner: Scanner$
+main(args: String[]) void$
}
class Player {
-name: String #123;final#125;
-points: int
-dices: Dice[] #123;final#125;
+Player(name: String)
+rollTheDices() int
+addPoints(value: int) void
}
class Dice {
+rollTheDice() int
}
```

## Allgemeine Hinweise

- Aus Gründen der Übersicht werden im Klassendiagramm keine Getter und
Object-Methoden dargestellt
- So nicht anders angegeben, sollen Konstruktoren, Setter, Getter sowie die
Object-Methoden wie gewohnt implementiert werden

## Hinweis zur Klasse _Dice_

Die Methode `int rollTheDice()` soll mit einer gleichverteilten
Wahrscheinlichkeit einen Wert zwischen 1 und 6 zurückgeben.

## Hinweise zur Klasse _Player_

- Der Konstruktor soll 5 Würfel initialisieren
- Die Methode `int rollTheDices()` soll alle 5 Würfel werfen und die Summe der
Würfelwerte zurückgeben
- Die Methode `void addPoints(value: int)` soll die Punkte des Spielers um den
eingehenden Wert erhöhen

## Spielablauf

- Das Spiel soll aus 5 Runden bestehen
- Zu Beginn des Spiels sollen die Spieler ihre Namen eingeben können
- Zu Beginn jeder Runde soll jeder Spieler 5 Würfel werfen
- Anschließend soll der Spieler mit dem höheren Wurfwert die Differenz der
beiden Wurfwerte als Punkte bekommen

## Beispielhafte Konsolenausgabe

```console
Spieler 1, bitte Namen eingeben: Hans
Spieler 2, bitte Namen eingeben: Peter

Runde - Wurfwert Hans - Wurfwert Peter - Differenz
1 - 16 - 22 - 6
2 - 21 - 23 - 2
3 - 17 - 19 - 2
4 - 26 - 13 - 13
5 - 19 - 15 - 4

Hans: 17 Punkte
Peter: 10 Punkte
```
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ classDiagram
}

class Recruiter {
+Recruiter(name String, birthdateTimeStamp long)
+Recruiter(name: String, birthdateTimeStamp: long)
}

class ApplicationDocument {
Expand All @@ -52,7 +52,7 @@ classDiagram
}

class JobOfferReader {
+getJobOffers(file File)$ List~JobOffer~
+getJobOffers(file: File)$ List~JobOffer~
}
```

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,6 @@ classDiagram
Fall, dass die Karte nicht Teil der Handkarten ist, soll die Ausnahme
`CardNotFoundException` ausgelöst werden und für den Fall, dass die
Aktionspunkte des Spielers nicht ausreichen, die Ausnahme
`NotEnoughActionPointsException`
`NotEnoughActionPointsException` ausgelöst werden.
- Die Methode `Optional<Card> getMostPowerfulCardByRow(row: int)` soll die
stärkste ausgespielte Karte der eingehenden Reihe zurückgeben
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ classDiagram
<<record>>
description: String
brand: Brand
conncetionType: ConnectionType
connectionType: ConnectionType
numberOfCameras: int
batteryCapacityInMah: int
cpuPowerInGhz: double
Expand All @@ -47,7 +47,7 @@ classDiagram
+query2() OptionalDouble
+query3(maxPriceInEuro: double) List~Phone~
+query4() Map~Phone, String~
+query5() Map~ConnectionTyp&sbquo; List~Phone~~
+query5() Map~ConnectionType&sbquo; List~Phone~~
}
```

Expand All @@ -72,5 +72,5 @@ classDiagram
Leistung besitzen
- Die Methode `Map<Phone, String> query4()` soll jedes Smartphone mit der
zusammengesetzten Zeichenkette aus Marke und Anschlusstyp zurückgeben
- Die Methode `Map<ConnectionType, Phone> query4()` soll alle Smartphones
- Die Methode `Map<ConnectionType, List<Phone>> query5()` soll alle Smartphones
gruppiert nach dem Anschlusstyp zurückgeben
6 changes: 3 additions & 3 deletions docs/exam-exercises/exam-exercises-java2/queries/tanks.md
Original file line number Diff line number Diff line change
Expand Up @@ -60,11 +60,11 @@ classDiagram
mit einem Gewicht von mehr als 25 Tonnen gruppiert nach dem Typ in der Form
_Typ: [Panzer, Panzer,...]_ ausgeben
- Die Methode `OptionalDouble getAveragePerformanceInHorsePower()` soll die
durchschnittliche Leistung in Pfer- destärken aller Panzer zurückgeben
durchschnittliche Leistung in Pferdestärken aller Panzer zurückgeben
- Die Methode `List<Nation> getAllNations()` soll die Nationen aller Panzer
zurückgeben
- Die Methode `boolean isAllTanksMaxSpeedBE50KMH()` soll zurückgeben, ob alle
- Die Methode `boolean isAllTanksMaxSpeedBE50Kmh()` soll zurückgeben, ob alle
Kampfpanzer eine Höchstgeschwindigkeit von min. 50 km/h besitzen
- Die Methode `void printLongestTankFromGermany()` soll den Namen des längsten
Panzers aus Deutschland auf der Konsole aus- geben. Gibt es keinen Panzer aus
Panzers aus Deutschland auf der Konsole ausgeben. Gibt es keinen Panzer aus
Deutschland, soll stattdessen der Wert `null` ausgegeben werden
2 changes: 1 addition & 1 deletion docs/exercises/class-diagrams/class-diagrams03.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ description: ''
import Exercise from '@site/src/components/Exercise';

- Passe die Klasse `Creature` aus Übungsaufgabe [OO06](../oo/oo06) anhand des
abgebildeten Klassendiagramms an und Erstelle die Klasse `CreatureGame`
abgebildeten Klassendiagramms an und erstelle die Klasse `CreatureGame`
- Erstelle eine ausführbare Klasse, welche einen Kampf zwischen zwei Kreaturen
simuliert

Expand Down
2 changes: 1 addition & 1 deletion docs/exercises/class-diagrams/class-diagrams04.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ classDiagram

- Der Konstruktor soll alle Attribute initialisieren
- Die Methode `int getEmployeeId()` soll die Id des Mitarbeiters zurückgeben
- Die Methode String getName()` soll den Namen des Mitarbeiters zurückgeben
- Die Methode `String getName()` soll den Namen des Mitarbeiters zurückgeben
- Die Methode `void setSalaryInEuro(salaryInEuro: int)` soll das Gehalt des
Mitarbeiters festlegen
- Die Methode `int getSalaryInEuro()` soll das Gehalt des Mitarbeiters
Expand Down
2 changes: 1 addition & 1 deletion docs/exercises/comparators/comparators02.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ classDiagram
}
```

## Hinweis zur Klasse CoordinateByDistanceToOriginPointComparator
## Hinweis zur Klasse _CoordinateByDistanceToOriginPointComparator_

Die Methode `int compare(coordinate1: Coordinate, coordinate2: Coordinate)` soll
so implementiert werden, dass Koordinaten aufsteigend nach ihrem Abstand zum
Expand Down
6 changes: 3 additions & 3 deletions docs/exercises/exceptions/exceptions03.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ description: ''

import Exercise from '@site/src/components/Exercise';

- Erstelle die Ausnhamenklassen `SalaryIncreaseTooHighException` und
- Erstelle die Ausnahmeklassen `SalaryIncreaseTooHighException` und
`SalaryDecreaseException`
- Passe die Klasse `Employee` anhand der Hinweise an
- Passe die ausführbare Klasse aus Übungsaufgabe
Expand Down Expand Up @@ -53,8 +53,8 @@ classDiagram

Die Methode `void setSalaryInEuro(salaryInEuro: int)` soll das Gehalt eines
Mitarbeiters festlegen. Ist das eingehende Gehalt mehr als 10% des bestehenden
Gehalts, soll die Ausnhame `SalaryIncreaseTooHighException` ausgelöst werden.
Ist das eingehende Gehalt weniger als das bestehende Gehalt, soll die Ausnhame
Gehalts, soll die Ausnahme `SalaryIncreaseTooHighException` ausgelöst werden.
Ist das eingehende Gehalt weniger als das bestehende Gehalt, soll die Ausnahme
`SalaryDecreaseException` ausgelöst werden.

<Exercise branchSuffix="exceptions-03" />
2 changes: 1 addition & 1 deletion docs/exercises/java-stream-api/java-stream-api02.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ classDiagram
den Namen der Spielerin vom VfL Wolfsburg mit den meisten Spielen zurückgeben
- Die Methode `List<FootballClub> getAllFootballClubs()` soll alle Vereine
zurückgeben
- Die Methode `boolean isFootballerWithSizeInCmLT170AndNumbreOfGoalsBT0()` soll
- Die Methode `boolean isFootballerWithSizeInCmLT170AndNumberOfGoalsBT0()` soll
die Antwort auf die Frage, ob es eine Spielerin gibt, die kleiner als 170cm
ist und mindestens ein Tor geschossen hat, zurückgeben
- Die Methode `Map<Integer, List<Footballer>> getAllFootballersByBirthyear()`
Expand Down
2 changes: 1 addition & 1 deletion docs/exercises/polymorphism/polymorphism03.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ classDiagram
GAS = Gas
ELECTRO = Elektro
-description: String #123;final#125;
Engine(description: String) String
Engine(description: String)
+getDescription() String
}

Expand Down
2 changes: 1 addition & 1 deletion docs/exercises/polymorphism/polymorphism04.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ classDiagram
class Dice {
-id: int
#value: int
+Dice(id int)
+Dice(id: int)
+getId() int
+getValue() int
+rollTheDice() void
Expand Down
Loading