Ein Quat ist eine Kombination aus einem Quine und dem beliebten Esolang- Katzenprogramm .
Herausforderung
Die Herausforderung besteht darin, ein Standard-Katzenprogramm zu schreiben. Unabhängig von den Benutzereingaben gibt das Programm die Eingabe als stdout aus.
Wenn die Länge der Eingabe jedoch größer als 0 und ein Vielfaches von 4 ist, sollte das Programm seinen eigenen Quellcode ausgeben. Quat kommt aus dem portugiesischen quatro , was "vier" bedeutet.
Regeln
- Es gelten Standardlücken
- Möglicherweise lesen Sie den Quellcode nicht aus einer Datei
- Eine leere Eingabe sollte eine leere Ausgabe erzeugen
Bonus
Wenn Ihre Eingabelänge ein Vielfaches von 4 ist, können Sie einen Bonus von 25% verdienen, indem Sie die Quine- length/4
Zeiten drucken . Ein weiterer 5% Bonus, wenn Sie die Ausgabe durch Leerzeichen trennen (kein Leerzeichen erlaubt).
Testfälle
Die folgenden Testfälle gelten für das Programm in%4=0?cat:self
(keine echte Sprache).
<empty input> -> <empty output>
input -> input
1234 -> in%4=0?cat:self
12345678 -> in%4=0?cat:self
0% Bonus
12345678 -> in%4=0?cat:selfin%4=0?cat:self
25% Bonus
12345678 -> in%4=0?cat:self in%4=0?cat:self
30% Bonus
Wertung
Das ist Code-Golf . Kürzester Code in Bytes gewinnt.
\n
das neue Zeilenzeichen für 1 Byte Eingabe