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
- 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).