You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

README.md 1.7KB

2 years ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. # Programmieren 3
  2. ## Assignment "Game Of Life"
  3. ### Einführung
  4. #### Game of Life
  5. Ihre Aufgabe ist es, eine Klasse <code>Life</code> zu implementieren,
  6. die das *Game of Life* simuliert. Beim *Game of Life*
  7. werden Zellen in einem zweidimensionelen Raster angeordnet.
  8. An jedem Rasterpunkt kann entweder eine lebende Zelle oder ein
  9. Leerraum positioniert werden.
  10. Für das Entstehen, Überleben oder Absterben einer Zelle
  11. ist die Anzahl der unmittelbaren Nachbarn entscheidend.
  12. Jeder Rasterpunkt hat 8 benachbarte Rasterpunkte
  13. (links, rechts, oben, unten, oben links, oben rechts, unten links, unten rechts).
  14. Für die Berechnung der nachfolgenden Generation sind auf die
  15. aktuelle Generation folgende Regeln anzuwenden:
  16. - Eine neue Zelle an einem bisher unbelebten Rasterpunkt entsteht,
  17. wenn genau drei benachbarte Rasterpunkte mit lebenden Zellen
  18. besetzt sind.
  19. - Lebende Zellen mit weniger als zwei lebenden Nachbarn sterben in der Folgegeneration an Einsamkeit.
  20. - Eine lebende Zelle mit zwei oder drei lebenden Nachbarn bleibt in der Folgegeneration am Leben.
  21. - Lebende Zellen mit mehr als drei lebenden Nachbarn sterben in der Folgegeneration an Überbevölkerung.
  22. #### Vorgaben
  23. Im Assignment werden Ihnen drei Code-Dateien vorgegeben:
  24. - <code>Life</code> soll später den Produktivcode enthalten.
  25. - <code>LifeTest</code> soll für den Testcode benutzt werden.
  26. - <code>ILife</code> ist ein Interface, das von der <code>Life</code>-Klasse
  27. implementiert werden soll.
  28. ### Aufgabenstellung
  29. Implementieren Sie die Klasse <code>Life</code> unter Nutzung der TDD-Vorgehensweise.
  30. Erstellen Sie für die oben genannten Regeln jeweils mindestens einen Testfall (für
  31. die erste Regel wurde bereits ein Testfall mitgeliefert).