12.07.2015 Aufrufe

Daten aus Excel in Word integrieren Game of Life

Daten aus Excel in Word integrieren Game of Life

Daten aus Excel in Word integrieren Game of Life

MEHR ANZEIGEN
WENIGER ANZEIGEN
  • Keine Tags gefunden...

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

Dr. Annette Bieniusa Sommersemester 2013Vorlesung: Programmieren <strong>in</strong> AnwendungenÜbungsblatt 2http://s<strong>of</strong>tech.<strong>in</strong>formatik.uni-kl.de/Homepage/PIA_SS13• Alle Aufgaben können <strong>in</strong> der VBA-Entwicklungsumgebung für <strong>Word</strong> bzw. <strong>Excel</strong> bearbeitetwerden.• Lösungen können häufig im Direktfenster getestet werden.<strong>Daten</strong> <strong>aus</strong> <strong>Excel</strong> <strong>in</strong> <strong>Word</strong> <strong>in</strong>tegrierenGegeben sei e<strong>in</strong>e <strong>Excel</strong>-Datei, die <strong>Daten</strong> von Teilnehmern e<strong>in</strong>er Kl<strong>aus</strong>ur enthält, <strong>in</strong> dem folgendenFormat enthält:• Die erste Spalte enthält die Nachnamen der Teilnehmer.• Die zweite Spalte enthält die Vornamen der Teilnehmer.• Die dritte Spalte enthält die erreichte Punktzahl des jeweiligen Teilnehmers <strong>in</strong> derKl<strong>aus</strong>ur.Erstellen Sie e<strong>in</strong> <strong>Word</strong>-Dokument, das e<strong>in</strong>e Liste der Teilnehmer enthält, die die Kl<strong>aus</strong>urbestanden haben. Bestanden gilt die Kl<strong>aus</strong>ur, wenn mehr als 40 Punkte erreicht wurden.1. Öffnen Sie zuerst e<strong>in</strong> <strong>Excel</strong>-Dokument und füllen Sie es mit e<strong>in</strong>igen Testdatensätzen.Speichern Sie das Dokument unter dem Namen Kl<strong>aus</strong>urergebnisse.xlsx.2. Öffnen Sie dann e<strong>in</strong> <strong>Word</strong>-Dokument und speichern Sie das Dokument unter dem NamenAushang.docm.3. Erstellen Sie e<strong>in</strong>e Prozedur <strong>Daten</strong>import, die die gewünschte Funktionalität implementiert.4. Achten Sie darauf am Ende die entsprechenden Objekte wieder freizugeben.5. Testen Sie die Prozedur.6. Ergänzen Sie das Makro um e<strong>in</strong>en Dialog, der beispielsweise die Bestehensschrankeanpasst oder den Pfad der Kl<strong>aus</strong>urergebnisse vom Benutzer erfragt.<strong>Game</strong> <strong>of</strong> <strong>Life</strong>Allgeme<strong>in</strong>e Informationen zu <strong>Game</strong> <strong>of</strong> <strong>Life</strong> (Quelle: Wikipedia)Conway’s <strong>Game</strong> <strong>of</strong> <strong>Life</strong> ist e<strong>in</strong> vom Mathematiker John Horton Conway 1970 entworfenes System,basierend auf e<strong>in</strong>em zweidimensionalen zellulären Automaten. Das Spiel kann manuellauf e<strong>in</strong>em Stück Papier oder mit Computerhilfe simuliert werden.Das Spielfeld ist <strong>in</strong> Zeilen und Spalten unterteilt und im Idealfall unendlich groß. Jedes Gitterquadratist e<strong>in</strong> Zellulärer Automat (Zelle), der e<strong>in</strong>en von zwei Zuständen e<strong>in</strong>nehmen kann,welche <strong>of</strong>t als lebendig und tot bezeichnet werden. Zunächst wird e<strong>in</strong>e Anfangsgenerationvon lebenden Zellen auf dem Spielfeld platziert. Jede lebende oder tote Zelle hat auf diesemSpielfeld genau acht Nachbarzellen, die berücksichtigt werden. Die nächste Generation ergibtsich durch die Befolgung e<strong>in</strong>facher Regeln. Da e<strong>in</strong> reales Spielfeld immer e<strong>in</strong>en Rand hat, mussdas Verhalten dort festgelegt werden. E<strong>in</strong>e Möglichkeit ist e<strong>in</strong> Torus-förmiges Spielfeld, beidem alles, was das Spielfeld nach unten verlässt, oben wieder her<strong>aus</strong>kommt und umgekehrt,und alles, was das Spielfeld nach l<strong>in</strong>ks verlässt, rechts wieder e<strong>in</strong>tritt und umgekehrt.Die Folgegeneration wird für alle Zellen gleichzeitig berechnet und ersetzt die aktuelleGeneration. Der Zustand e<strong>in</strong>er Zelle, lebendig oder tot, <strong>in</strong> der Folgegeneration hängt nur vomZustand der acht Nachbarzellen dieser Zelle <strong>in</strong> der aktuellen Generation ab.


Regeln• E<strong>in</strong>e tote Zelle mit genau drei lebenden Nachbarn wird <strong>in</strong> der Folgegeneration neugeboren.• Lebende Zellen mit weniger als zwei lebenden Nachbarn sterben <strong>in</strong> der Folgegenerationan E<strong>in</strong>samkeit.• E<strong>in</strong>e lebende Zelle mit zwei oder drei lebenden Nachbarn bleibt <strong>in</strong> der Folgegenerationlebend.• Lebende Zellen mit mehr als drei lebenden Nachbarn sterben <strong>in</strong> der Folgegeneration anÜberbevölkerung.Mit diesen vier e<strong>in</strong>fachen Regeln entsteht <strong>aus</strong> bestimmten Anfangsmustern im Laufe desSpiels e<strong>in</strong>e Vielfalt komplexer Strukturen. E<strong>in</strong>ige bleiben unverändert, andere oszillieren undwieder andere wachsen oder vergehen. Manche Strukturen, sogenannte Gleiter, bewegen sichauf dem Spielfeld fort.Implementierung von <strong>Game</strong> <strong>of</strong> <strong>Life</strong> <strong>in</strong> <strong>Excel</strong>Mit Hilfe von <strong>Excel</strong>s Tabellenblättern lässt sich <strong>Game</strong> <strong>of</strong> <strong>Life</strong> relativ e<strong>in</strong>fach schrittweise implementieren.1. Def<strong>in</strong>ieren Sie die Grösse des Spielfeldes, z.B. 20 x 20 Zellen.2. Def<strong>in</strong>ieren Sie e<strong>in</strong>en Cell-Style für tote und e<strong>in</strong>en für lebendige Zellen.3. Erzeugen Sie zwei Tabellenblätter, für den aktuellen Zustand und den Zustand desvorangegangenen Schritts.4. Schreiben Sie e<strong>in</strong>e Prozedur Toggle, die den Style des aktuell markierten Feldes wechselt.5. Schreiben Sie e<strong>in</strong>e Prozedur Step, die den Zustand des Feldes im Schritt bestimmt.Def<strong>in</strong>ieren Sie dazu Hilfsfunktionen zur Berechnung von Nachbarfeldern (<strong>in</strong>sbesonderebei Randfeldern) und zum Zustand e<strong>in</strong>er Zelle im nächsten Schritt basierend auf denoben genannten Regeln.6. Schreiben Sie e<strong>in</strong>e Initialisierungsfunktion, die das Spielfeld <strong>in</strong> e<strong>in</strong>en Anfangszustandversetzt und dann zwei Ereignisprozeduren registriert:Application . OnKey ” s ” , ” Step ”Application . OnKey ” t ” , ” Toggle ”Diese Prozeduren führen dann bei entsprechender E<strong>in</strong>gabe den Farbwechsel bzw. nächstenSchritt <strong>aus</strong>.7. Starten Sie die Initialisierungsfunktion und testen Sie Ihr Programm. Auf Wikipedia(http://de.wikipedia.org/wiki/<strong>Game</strong>_<strong>of</strong>_<strong>Life</strong>) f<strong>in</strong>den sich e<strong>in</strong>ige <strong>in</strong>teressante Startmuster.8. Fügen Sie e<strong>in</strong>en passenden UserForm-Dialog h<strong>in</strong>zu, der die Funktionalität des Programmskomfortabel steuert (z.B. Wahl der Spielfeldgrösse, Farb<strong>aus</strong>wahl, Anzahl der<strong>aus</strong>zuführenden Schritte).

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!