summaryrefslogtreecommitdiffstats
path: root/src/de/fhswf/in/inf
diff options
context:
space:
mode:
Diffstat (limited to 'src/de/fhswf/in/inf')
-rw-r--r--src/de/fhswf/in/inf/java1/aufgabe8/Lottery6OutOf49.java80
-rw-r--r--src/de/fhswf/in/inf/java1/aufgabe8/LottoZiehungMain.java22
2 files changed, 86 insertions, 16 deletions
diff --git a/src/de/fhswf/in/inf/java1/aufgabe8/Lottery6OutOf49.java b/src/de/fhswf/in/inf/java1/aufgabe8/Lottery6OutOf49.java
new file mode 100644
index 0000000..c09893e
--- /dev/null
+++ b/src/de/fhswf/in/inf/java1/aufgabe8/Lottery6OutOf49.java
@@ -0,0 +1,80 @@
+/**
+ *
+ */
+package de.fhswf.in.inf.java1.aufgabe8;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+
+/**
+ * A class, that simulates a 6 out of 49 Lottery.
+ *
+ * @author $Author: $
+ * @version $Revision: $, $Date: $ UTC
+ */
+public class Lottery6OutOf49
+{
+
+ private ArrayList<Integer> lotteryNumbers = new ArrayList<>(49);
+
+ private ArrayList<Integer> lastDraw = new ArrayList<>(6);
+
+ private Integer superzahl;
+
+ /**
+ * Creates a new valid object, that also starts the first draw.
+ *
+ */
+ public Lottery6OutOf49()
+ {
+ for (int i = 1; i <= 49; i++)
+ {
+ lotteryNumbers.add(i);
+ }
+
+ nextDraw();
+
+ }
+
+ /**
+ * Does the next draw.
+ *
+ */
+ public void nextDraw()
+ {
+ List<Integer> tmp = FloydAndBentley.sample2(lotteryNumbers, 7);
+
+ superzahl = tmp.get(tmp.size() - 1);
+
+ lastDraw.clear();
+
+ for (int i = 0; i < 6; i++)
+ {
+ lastDraw.add(tmp.get(i));
+ }
+
+ lastDraw.sort(null);
+ }
+
+ /**
+ * Returns the last draw.
+ *
+ * @return Returns an immutable list of the last draw.
+ */
+ public List<Integer> getLastDraw()
+ {
+ return Collections.unmodifiableList(lastDraw);
+ }
+
+ /**
+ * Returns the super number.
+ *
+ * @return The super number of the last draw.
+ */
+ public Integer getSuperzahl()
+ {
+ return new Integer(superzahl);
+ }
+
+}
diff --git a/src/de/fhswf/in/inf/java1/aufgabe8/LottoZiehungMain.java b/src/de/fhswf/in/inf/java1/aufgabe8/LottoZiehungMain.java
index 6524a29..9c9cffe 100644
--- a/src/de/fhswf/in/inf/java1/aufgabe8/LottoZiehungMain.java
+++ b/src/de/fhswf/in/inf/java1/aufgabe8/LottoZiehungMain.java
@@ -3,7 +3,6 @@
*/
package de.fhswf.in.inf.java1.aufgabe8;
-import java.util.ArrayList;
import java.util.List;
/**
@@ -31,21 +30,12 @@ public final class LottoZiehungMain
*/
public static void main(String[] args)
{
- List<Integer> lottoZahlen = new ArrayList<>(49);
+ Lottery6OutOf49 spiel = new Lottery6OutOf49();
+
+ List<Integer> ziehung = spiel.getLastDraw();
+
+ Integer sonderzahl = spiel.getSuperzahl();
- for (int i = 1; i <= 49; i++)
- {
- lottoZahlen.add(i);
- }
-
- List<Integer> ziehung = FloydAndBentley.sample(lottoZahlen, 7);
-
- Integer Sonderzahl = ziehung.get(6);
-
- ziehung.remove(6);
-
- ziehung.sort(null);
-
- System.out.println(ziehung + " SonderZahl: " + Sonderzahl);
+ System.out.println(ziehung + " SonderZahl: " + sonderzahl);
}
}