Gaußsche Summenformel


Ron Drongowski

Nachdem es hier bei meiner aktuellen Arbeitsstelle immer abgedrehter wird und manche Leute sich schon freiwillig mit Dingen wie Haskell am Wochenende beschäftigen. Anstatt sich mit der frisch gekauften PlayStation Portable aufs Sofa zu setzen, wird dann erst mal eine Randgruppen-Programmiersprache trainiert.

Eine neue Dimension

Nun wurde aber eine neue Dimension erreicht: Wir sind bei der Gaußschen Summenformel angelangt. Damit es diesmal aber nicht langweilig wird, verpacke ich das Ganze in ein Gewinnspiel, bei dem auch meine Leser wirklich etwas gewinnen können.

Gewinnspiel!

Der Ron hat wieder zugeschlagen. Diesmal stellt er in dem Video am Ende dieses Artikels eine Frage, die es zu beantworten gilt. Der Gewinner bekommt nichts anderes als eine original Requisite von meiner Praktikumszeit bei Game One: den echten Captain N-Gürtel aus der Sendung. Das schicke Ding würde mir bei eBay zwar tausende Euro einbringen, aber was macht man nicht alles für seine treuen Leser. Der Gewinner wird von mir benachrichtigt und bekommt das modische Accessoires frei Haus von mir zugeschickt.

Noch ein Tipp

Ein Hinweis an meine Kollegen, die sich vielleicht wundern werden, warum ich so viel aus dem Video rausgeschnitten habe. Ich glaube, dass im Netz kein Video länger sein darf als 60 Sekunden. Ansonsten wird es schnell langweilig und viele schauen so etwas nicht zu Ende. Deswegen diese absolut kurze und knackige Version. Viel Spaß beim Mitmachen.

Hinweis: Damit nicht jeder einfach auf Wikipedia surft und schlicht die Formel kopiert, lasse ich hier die kreativste und am schönsten ausgeschmückteste Antwort gewinnen. Diese wird von Ron selber am Freitag, dem 10.10. 2008 gekürt.


Beitrag veröffentlicht

in

von

Kommentare

28 Antworten zu „Gaußsche Summenformel“

  1. Avatar von Kim
    Kim

    Hehe, zuviel Perl gemacht heute Jonah? :)
    Ich empfehle dazu mal das Buch »Die Vermessung der Welt« von Daniel Kehlmann. Sehr witzig, aber leider ohne Haskell.

  2. Avatar von Jörn Clausen
    Jörn Clausen

    Ich verstehe nicht, was Du gegen Haskell hast. Schau Dir mal an, wie geschwätzig man in der funktionalen Sprache programmieren muss, die Du fließend sprichst: Wende diese Datei auf diese Datei an, und Du bekommst das richtige Ergebnis. Aber der Aufwand….

  3. Avatar von fabian
    fabian

    001 +
    010 +
    011 +
    100
    ———-
    1010 = (10 dezimal)

    sind doch gar nicht so viele. :-)

  4. Avatar von Dr. No
    Dr. No

    Jungs, ihr habt alle einen an der Pfanne =)

  5. Avatar von Marc
    Marc

    Oh, noch eine XSLT-Lösung. Wir haben nun:

    Perl
    Haskell
    XSLT
    und die Binär-„Lösung“ von Fabian. =)

    Ich habe mal das XSLT-Stylesheet auf die XML-Datei angewendet. Die Berechnung ohne eine Multiplikation auskommt und eher der org. Lösung von Gauß nahe kommt. =) Ins Moblog kommt die Lösung natürlich auch noch.

    Aber es zeigt sich doch bisher, dass wir hier wohl sehr intelligente Leute haben die hier mitlesen – und auch tatkräftig mitmachen! Das empfinde ich als eine echte Ehre.

  6. Avatar von Ron
    Ron

    Sagen wir mal so: Die XSLT-Lösung kommt dem Gaußschen-Lösungsansatz nahe und ist damit die didaktisch schönste – gesetzt dem Fall, dass man in der Schule erst XSLT und dann Mathematik lernt ;)

    Viel interessanter i.d.Z: Was ist in XSLT letztlich performanter? Addition oder Multiplikation? Sagen wir beim aktuellen SAXON.

    Und da ja Haskells syntaktische Schönheit sich in der Rekursion erst voll entfaltet: Wie wäre es mit einer Haskell-Lösung, die ohne Multiplikation auskommt?

  7. Avatar von Jörn Clausen
    Jörn Clausen

    Um die Formel hinzuschreiben, braucht man keine Programmiersprache zu bemühen, ganz gleich welche. Programmierung macht nur Sinn, wenn’s auch einen Algorithmus abzuarbeiten gibt. Und entweder nimmt man die langweilige Variante mit einer Schleife (also das, was die Mitschüler von Gauß der Legende nach gemacht haben), oder die interessantere Methode, die auf der Grundidee von Gauß beruht. Man kann das Problem natürlich auch ganz anders lösen.

    Ich würde übrigens mal vermuten, dass die rekursive Lösung in XSLT schlecht performiert (zumindest vom Speicherbedarf), weil keine tail recursion möglich ist. Glaube ich zumindest. Meine A&D-Vorlesung ist mehr als doppelt so lange her wie bei den anderen Leuten hier, und da hatten wir das Thema noch nicht einmal :)

  8. Avatar von Ron
    Ron

    Genau! Es geht hier ja um den kreativen Ansatz und der steckt im XSLT am deutlichsten. Jetzt fehlt noch ein Film in dem Gauß die Erkenntnis kommt.

  9. Avatar von Ron
    Ron

    Der Saxon z.B. kann übrigens tail recursion. Und als witzige Randbemerkung: Der Wikipediaartikel dazu beschäftigt sich ebenfalls mit unserem Problem.

  10. Avatar von joen
    joen

    Und da ja Haskells syntaktische Schönheit sich in der Rekursion erst voll entfaltet: Wie wäre es mit einer Haskell-Lösung, die ohne Multiplikation auskommt?

    gauss :: fractional -> fractional
    gauss 0 = 0
    gauss 1 = 1
    gauss n = (n + gauss (n-1))

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert