diff --git a/CheeseChampion.java b/CheeseChampion.java index 380a362..9d9499b 100644 --- a/CheeseChampion.java +++ b/CheeseChampion.java @@ -12,21 +12,23 @@ public class CheeseChampion { eingang = new Queue<>(); seitengang = new Stack<>(); ausgang = new Queue<>(); + rand = new Random(); } public void startCheeseChampion(){ while(!eingang.isEmpty()||!seitengang.isEmpty()){ if(!eingang.isEmpty()){ + kampf(); seitengang.push(eingang.front()); eingang.dequeue(); - kampf(); + } else { ausgang.enqueue(seitengang.top()); seitengang.pop(); } } while(!ausgang.isEmpty()){ - System.out.println(ausgang.front()); + System.out.println(ausgang.front().getNumber()); ausgang.dequeue(); } } @@ -50,18 +52,17 @@ public class CheeseChampion { * Siehe im Buch auf Seite 88 für eine Beschreibung des Kampfes. */ public void kampf() { - // Implemenitere hier den Mäusekampf - if(seitengang.top().getStrength()>eingang.front().getStrength()){ - eingang.dequeue(); - ausgang.enqueue(seitengang.top()); - seitengang.pop(); - } else if(seitengang.top().getStrength()==eingang.front().getStrength()){ - if(rand.nextBoolean()){ - eingang.dequeue(); + if(!eingang.isEmpty()&&!seitengang.isEmpty()){ + if(seitengang.top().getStrength()>eingang.front().getStrength()){ ausgang.enqueue(seitengang.top()); seitengang.pop(); - } else { - seitengang.pop(); + } + if(seitengang.top().getStrength()==eingang.front().getStrength()){ + if(rand.nextBoolean()){ + eingang.dequeue(); + ausgang.enqueue(seitengang.top()); + seitengang.pop(); + } } } } diff --git a/Maus.java b/Maus.java index 91027e8..4a09912 100644 --- a/Maus.java +++ b/Maus.java @@ -4,7 +4,7 @@ import java.util.Random; public class Maus { //TODO: Implementiere die Maus nach der Beschreibung - Random rand; + Random rand = new Random(); int strength; int number; @@ -21,4 +21,8 @@ public class Maus { public int getStrength(){ return strength; } -} + + public int getNumber(){ + return number; + } +}