Crowdfinanzieren seit 2010

Ein Abreißkalender. Acht Kategorien. 366 Anagrammrätsel.

Der Anagrammkalender 2016 ist ein Abreißkalender mit 366 verzwickten Anagrammen bekannter Personen aus den Bereichen Kunst, Literatur, Musik, Politik, Pop, Sport und Wissenschaft. Einfach die Buchstaben umsortieren und schon wird "Achilles" zu "Alles ich", "Nofretete" zu "Tortenfee" und "James Bond" zu "Damen-Jobs".
Datenschutzhinweis
Finanzierungszeitraum
01.10.15 - 31.10.15
Realisierungszeitraum
Bis Weihnachten 2015
Website & Social Media
Mindestbetrag (Startlevel): €
9.500 €
Stadt
Mainz
Kategorie
Spiele
Projekt-Widget
Widget einbinden
22.10.2015

50002110101052100101101000-0001002000 (Teil 2)

Matthias Wiebel
Matthias Wiebel3 min Lesezeit

[ACHTUNG – Blogpost zum Mitdenken]
tl;dr: Alles wurde extrem schlau gelöst! ;)

Heute also, kurz vor den 50%, kommt der zweite Teil von „Wie kommt man auf 366 Anagramme?“. Diesmal mit der Erklärung, wie das verwendete Programm arbeitet und warum es das tut. Wie schon erwähnt, greift das von mir extrem kreativ „anagen“ getaufte Programm auf ein Wörterbuch gültiger Wörter der deutschen Sprache zurück.
Naheliegend wäre es jetzt, jedes dieser Wörter Zeichen für Zeichen mit dem zu anagrammierenden Namen zu vergleichen. Doch leider ist das Arbeiten auf Zeichenketten nicht unbedingt die effizienteste Angelegenheit. Dass Effizienz wichtig ist, lässt sich gut daran erkennen, dass meine erste Version von anagen für das Anagrammieren von „Franz Schubert“ sieben Stunden benötigt hat. Und Franz Schubert ist noch nicht einmal der längste Name im Kalender. Nach einigen Überlegungen und dem Ändern von zwei Zeilen im Programm, ließ sich diese Zeit allerdings um den Faktor 210 auf etwa zwei Minuten reduzieren.
Wie also möglichst effizient auf den Zeichenketten arbeiten? Die Lösung liegt in der Natur der Anagramme versteckt. Anagramme eines Wortes bestehen grundsätzlich aus den gleichen Buchtaben, nur eben in unterschiedlicher Reihenfolge. Die Worte „Geist“ und „Siegt“ haben beide je ein e, ein g, ein i, ein s und ein t. Deshalb zählt das Programm für jede Zeichenkette die Vorkommen der einzelnen Buchstaben und vergisst deren Reihenfolge. Nehmen wir zum Beispiel die Worte „Hallo“, „Lola“ und „Axt“. „Hallo“ hat ein a, ein h, zwei l und ein o. Die Anzahl der Vorkommen wird für jeden Buchtaben des Alphabets dann in Programmschreibweise so festgehalten: „Hallo“ wird 10000001000200100000000000, „Lola“ wird 10000000000200100000000000 und „Axt“ wird mit jeweils einem a, t und x zu 10000000000000000001000100.
Um jetzt zu überprüfen, ob „Lola“ in „Hallo“ enthalten ist, wird die Anzahl der As in „Lola“ von der Anzahl der As in „Hallo“ abgezogen. Ist das Ergebnis der Subtraktion größer oder gleich 0, dann sind in „Hallo“ mehr, oder genauso viele As wie in „Lola“. Das wird dann für alle Buchstaben in „Lola“ gemacht. Sind die Ergebnisse aller Subtraktionen größer oder gleich 0, so ist „Lola“ in „Hallo“ enthalten, was auch tatsächlich der Fall ist. „Axt“ jedoch enthält ein t und ein x mehr als „Hallo“, weshalb die Ergebnisse der Subtraktion da jeweils negativ ausfallen. „Axt“ ist also nicht enthalten. Das Programm stoppt beim ersten negativen Ergebnis, käme also nur bis zum t von „Axt“.
Das Ergebnis der jeweiligen Rechnungen wird direkt in die Buchstabenzähltabelle eingetragen, damit im nächsten Schritt damit weitergearbeitet werden kann. Nach der Subtraktion von „Lola“ bleibt also 0000000100000000000000000 übrig. Da es kein Wort gibt, das nur aus dem Buchstaben h besteht, kann mit „Lola“ kein gültiges Anagramm von „Hallo“ gebildet werden. Jede Wortkombination die auf 00000000000000000000000000 kommt, trägt das Programm allerdings in die Ergebnisliste ein.

Das Problem Zeichenketten miteinander zu vergleichen wurde also in das Problem, Zahlen voneinander abzuziehen überführt. Und wenn Rechner mal etwas gut und effizient können, dann ist es, wie ihr Name schon sagt, rechnen. :)

Puh, so viel Theorie.

Jetzt dürft ihr Euch eine Denkpause gönnen und Euch wieder aufs altbekannte „Weitererzählen! Weitererzählen! Weitererzählen!“ verlagern. Wir haben noch zehn Tage und fast 50%. Ich will das Projekt, ihr wollt das Projekt, los geht’s!

P.S. Der Titel dieses Blogeintrages wurde genauso aufbereitet, wie es das Programm tun würde. Wobei eigentlich keine Ziffern akzeptiert würden. Aber für „'Wie kommt man auf 366 Anagramme'?“ habe ich eine Ausnahme gemacht. ;)

Das Crowdfunding-Projekt wurde erfolgreich abgeschlossen. Das Unterstützen und Bestellen ist auf Startnext nicht mehr möglich.

  • Die Abwicklung getätigter Bestellungen erfolgt entsprechend der angegebenen Lieferzeit direkt durch die Projektinhaber:innen.

  • Die Produktion und Lieferung liegt in der Verantwortung der Projektinhaber:innen selbst.

  • Widerrufe und Rücksendungen erfolgen zu den Bedingungen der jeweiligen Projektinhaber:innen.

  • Widerrufe und Stornos über Startnext sind nicht mehr möglich.

Was heißt das?
Impressum

Weitere Projekte entdecken

Teilen
Anagrammkalender 2016
www.startnext.com

Diese Video wird von YouTube abgespielt. Mit dem Klick auf den Play-Button stimmst du der Weitergabe dafür notwendiger personenbezogenen Daten (Bsp: Deine IP-Adresse) an Google Inc (USA) als Betreiberin von YouTube zu. Weitere Informationen zum Zweck und Umfang der Datenerhebung findest du in den Startnext Datenschutzbestimmungen. Mehr erfahren