Aufgabe
Erstellen Sie ein Programm, das die Fakultät einer Zahl ohne eingebaute Fakultätsfunktionen berechnet. Einfach? Der Haken ist, dass Sie Ihr gesamtes Programm (einschließlich des Testens) in Haiku- Form schreiben müssen .
Sie können so viele Haikus verwenden, wie Sie benötigen, aber wenn sie ausgesprochen werden, müssen sie dem 5-7-5-Silbenformat folgen.
Wertung
Dies ist ein Beliebtheitswettbewerb , also musst du die meisten Upvotes bekommen, um zu gewinnen. Ihr Programm muss aus mindestens einem vollständigen Haiku bestehen und alle Haikus müssen vollständig sein.
Beim Lesen von Code hat die erste Zeile jedes Haikus 5 Silben, die zweite 7 und die dritte 5.
popularity-contest
Der Arzt
quelle
quelle
then
Interpunktion beim Schneiden helfen könnte. Für Kigo , nicht so sicher ...Antworten:
Smalltalk
(In einem Arbeitsbereich auswerten; öffnet einen Dialog, fragt nach einer Zahl und druckt das Ergebnis auf stdout):
Ich habe versucht, eine Reflexion ("in diesem Gedicht") und auch Kigo einzubringen. Auch einige westliche Reimelemente sind enthalten (bitte-> diese, Zeit-> Reim); da ich jedoch weder Japanisch noch Englisch als Muttersprache habe, vergebe ich keine stilistischen Details ;-)
quelle
Haskell
Haskell Ausbildungszeit:
range x
Funktion erstellt eine Liste von ganzen Zahlen von 1 bis zum Wert vonx
.fact x
Funktion multipliziert alle Werte der Listerange x
, um das Ergebnis zu berechnen.fact
Funktion eine Ganzzahl akzeptiert und eine Ganzzahl zurückgibt.quelle
range x is 1 to x
besteht aus 6 SilbenJava - 2 Haikus
Auch wenn die Frage nicht Code-Golf ist , ertappe ich mich oft beim Golfspielen als Antwort. In diesem Fall habe ich die Anzahl der Haikus golfen.
Ich spreche es so aus:
Testprogramm:
Beachten Sie, dass dieses Programm
0
s schnell ausgibt . das ist eine Folge von Überlauf. Sie könnten leicht größere korrekte Zahlen erhalten, indem Sie jedeint
in ändernlong
.Standardaussprachen für
System.out.println
undpublic static void main(String[] args)
spiegeln sich im Programm wider.quelle
APL
quelle
factorial←×/⍳
"bis zur Eingabe".Shakespeare
Ein (imaginärer) Testfall:
Trotz seiner Länge nimmt dieses Programm nur eine einzelne Ganzzahl als Eingabe und stellt eine einzelne Ganzzahl als Ausgabe bereit. Damit:
("Sechs, siebenundzwanzig. / Sieben, fünftausendvierzig. / Null, eins. Eins, eins.")
quelle
Python 2, 4 Haikus
Ein vollständiges Python 2-Programm
haifac.py
. Rennen wiepython haifac.py <n>
Aussprache:
quelle
#to me at once
, um das Messgerät zum Laufen zu bringen ...GolfScript, 2 Haikus
Als Haiku lesen und jeden Tastendruck aufzählen:
Mit Testfall (5 Haikus):
Gelesen als Haiku:
quelle
Forth
Fugu ist die Funktion und mein Versuch bei Kigo : Blowfish ist eine Winterreferenz. Ich beabsichtige
?do
, Kireji zu sein , der Wendepunkt vor der gezählten Schleife.quelle
PHP, 4 Haikus
All-in-Rhyme- Haikus!
quelle
return plus plus stun
.Leerzeichen
Dies macht Gebrauch von einem der berühmtesten Haikus , und es wurde viel darüber geschrieben.
Keine Ahnung, warum das noch niemand gemacht hat, es ist nicht mal anstrengend!
Vor dem Lesen des Gedichts möchte ich, dass Sie sich zurücklehnen, entspannen und die Ruhe genießen, die durch die große Leere entsteht, die das Gedicht umgibt. Es betont den Teich, umgeben von einer weiten Landschaft.
Quellcode auf Filebin
Falls Sie kein Japanisch sprechen, wird dies wie folgt ausgesprochen :
Natürlich wird es von Mora gezählt. Der Kireji ist や ( ya ) , der Kigo (saisonale Referenz) ist 蛙 ( Kawazu , Frosch, -> Frühling) .
Mit dem Linux-Interpreter von der offiziellen Seite können Sie es wie folgt verwenden:
quelle
Mathematica
Pedanten lesen die letzte Zeile vielleicht als "f von 1 ist 1", aber ich konnte dem Ruf nach Basho nicht widerstehen.
Testen:
Rückgabe:
Bonus für sprachliche Unterscheidbarkeit Haiku (inspiriert von @cormullion)
quelle
Stapel
Aussprache ; ignoriert mathematische Ausdrücke sowie diese Symbole
@ / % ^ , ( )
:Hinweis; dies berechnet die Fakultät, gibt sie nicht aus - die Variable
t
enthält die Fakultät.Der folgende Haiku / Code kann an dieselbe Batchdatei angehängt werden, um die Fakultät auszugeben (die
|
werden als Pipe ausgesprochen):quelle
Clojure
quelle
F #
quelle
newLISP
Die Klammern sind nicht ausgesprochen:
quelle
Perl
Wirf dies in eine Datei mit dem Namen
f.pl
Und die Ausgabe:
Welches heißt:
quelle
LiveScript
Dieser ist mittelalterlich:
Druckt
3628800
, was ist10!
. Es ist ein kleiner Kreisverkehr: Die Funktionstory
gibt eine Funktion zurückones-misery
, die immer die Antwort liefert. So ist es künstlerischer.Keine Füllerkommentare oder unnötige Zeichenketten!
Bonus-Debugging-Geschichte:
quelle
Haskell
Dieser wird ein reimendes Haiku sein!
Ja!
Hinweis: Pred bedeutet die vorherige Nummer. In haskell können Sie auch mehrere Definitionen einer Funktion haben, und die erste, die Sinn macht, wird verwendet.
quelle
Rubin - Ein Haiku
Lesen Sie (ohne Zeichensetzung, aber mit einem Emoticon) wie folgt:
quelle
In SML:
gelesen als:
quelle
Perl
Ich weiß, dass es gegen die Regeln verstößt, fertige Funktionen zu verwenden, aber hier ist, was ich bekomme.
Stellen Sie sich vor, Sie müssen ein übergroßes Nagetier anweisen:
Ich kann nur raten, was das letzte Wort bedeutet und wie es ausgesprochen wird, aber ich versichere Ihnen, dass es eine Silbe ist. Anscheinend versteht er nicht, was Sie von ihm wollen, daher müssen Sie Folgendes ausarbeiten (Qualitätsverbesserung, wenn Sie die Geduld verlieren):
noch vergebens Dann muss man es im Klartext erklären:
Was als nächstes passierte, weiß ich nicht, aber der Code ist gültig:
und
und
quelle
Python
So habe ich es gelesen:
`
quelle
C
Aussprache:
Pfund enthalten Standard-
I / O-Punkt h Pfund enthalten
Standard-Lib-Punkt h
int main int arg c
Komma Stern Stern arg v
Klammer Kommentar
Berechnen Sie hier iterativ Fakultät
lang int n gleich
null Komma i
entspricht null Komma r
entspricht einem Kommentar
Produkt beginnt mit einem
Semikolon, wenn arg c
größer als eins ist
offene geschweifte Klammer n ist
str-to-l von arg v sub
one comma NULL comma ten
Semikolon, wenn
n kleiner als Null ist,
muss printf arg beginnen
größer oder
gleich Null Backslash
n Semikolon sein
Ende negativ ein Semikolon Klammer
Ende Klammer i gleich
n Semikolon,
während ich Klammer r öffne,
entspricht r mal i
Semikolon Ich
dekrementiere Semikolon
Schließen Klammer Kommentar drucken
Das Ergebnis printf
Prozent d Fakultät
entspricht Prozent d
whack n comma n
comma r Semikolon
Kommentar fertig Ende Klammer
quelle
#
Zeichen wird im C-Code normalerweise scharf oder achteckig ausgesprochen .C # - 3 Haikus
Ich entfernte das übliche C # mit, Namespace und Klassendefinitionsunordnung, die ein 4. Haiku sein würde.
was ich als
quelle
Haskell
Beachten Sie, dass das Modul bei der Kompilierung automatisch zu jedem Haskell-Code hinzugefügt wird, ohne dass es kompiliert wird.
quelle
do
und das musste nicht seinMonad a => a
.JAVA:
Als Antwort auf die Frage und auf das Dwaiku (Double-Haiku oder wie auch immer Sie es nennen möchten), das von Quincunx in Java gepostet wurde, hier das richtige Haiku:
quelle
Javascript - Zwei Haikus
Ich bin kein Muttersprachler. Also habe ich ein Wörterbuch benutzt, um die Silben zu zählen. Hoffentlich ist es gut genug. Jedes Feedback ist willkommen :)
quelle
Powershell, 2 Haikus
quelle
Dürfen wir Füller verwenden?
Python 2 Haikus:
quelle
nuum equals length one
?num equals length of the list
macht 7 Silben anstelle von 5.nuum
mitfoo
(weil ich , wenn als nu-äh, ich lesen , die Sie über die Grenze bringt.)Befunge-93
Drei Haikus:
Die letzte Zeile ist zugegebenermaßen irgendwie betrogen.
Versuchen Sie es hier: http://www.bedroomlan.org/tools/befunge-93-playground
quelle