Inspiriert von George Gibsons Print a Tabula Recta .
Sie müssen genau diesen Text drucken / ausgeben:
ABCDEFGHIJKLMNOPQRSTUVWXYZ
BBCDEFGHIJKLMNOPQRSTUVWXYZ
CCCDEFGHIJKLMNOPQRSTUVWXYZ
DDDDEFGHIJKLMNOPQRSTUVWXYZ
EEEEEFGHIJKLMNOPQRSTUVWXYZ
FFFFFFGHIJKLMNOPQRSTUVWXYZ
GGGGGGGHIJKLMNOPQRSTUVWXYZ
HHHHHHHHIJKLMNOPQRSTUVWXYZ
IIIIIIIIIJKLMNOPQRSTUVWXYZ
JJJJJJJJJJKLMNOPQRSTUVWXYZ
KKKKKKKKKKKLMNOPQRSTUVWXYZ
LLLLLLLLLLLLMNOPQRSTUVWXYZ
MMMMMMMMMMMMMNOPQRSTUVWXYZ
NNNNNNNNNNNNNNOPQRSTUVWXYZ
OOOOOOOOOOOOOOOPQRSTUVWXYZ
PPPPPPPPPPPPPPPPQRSTUVWXYZ
QQQQQQQQQQQQQQQQQRSTUVWXYZ
RRRRRRRRRRRRRRRRRRSTUVWXYZ
SSSSSSSSSSSSSSSSSSSTUVWXYZ
TTTTTTTTTTTTTTTTTTTTUVWXYZ
UUUUUUUUUUUUUUUUUUUUUVWXYZ
VVVVVVVVVVVVVVVVVVVVVVWXYZ
WWWWWWWWWWWWWWWWWWWWWWWXYZ
XXXXXXXXXXXXXXXXXXXXXXXXYZ
YYYYYYYYYYYYYYYYYYYYYYYYYZ
ZZZZZZZZZZZZZZZZZZZZZZZZZZ
(Ja, das habe ich von Hand getippt)
Sie dürfen nur Kleinbuchstaben anstelle von Großbuchstaben verwenden.
Ihre Fallauswahl muss jedoch im gesamten Text konsistent sein.
Regeln / Anforderungen
- Jede Einreichung sollte entweder ein vollständiges Programm oder eine Funktion sein. Wenn es sich um eine Funktion handelt, muss sie ausgeführt werden können, indem nur der Funktionsaufruf am Ende des Programms hinzugefügt wird. Alles andere (z. B. Überschriften in C) muss enthalten sein.
- Wenn es möglich ist, geben Sie einen Link zu einer Site an, auf der Ihr Programm getestet werden kann.
- Ihr Programm darf nichts schreiben
STDERR
.
- Standardlücken sind verboten.
- Ihr Programm kann in jedem Fall ausgeben, es muss jedoch gedruckt werden (kein Array oder ähnliches).
Wertung
Programme werden nach Bytes, standardmäßig in UTF-8 oder einem anderen Zeichensatz Ihrer Wahl bewertet.
Irgendwann gewinnt die Antwort mit den wenigsten Bytes.
Einreichungen
Um sicherzustellen, dass Ihre Antwort angezeigt wird, beginnen Sie Ihre Antwort mit einer Überschrift. Verwenden Sie dazu die folgende Markdown-Vorlage:
# Language Name, N bytes
Wo N
ist die Größe Ihres Beitrags? Wenn Sie Ihren Score zu verbessern, Sie können alte Rechnungen in der Überschrift halten, indem man sich durch das Anschlagen. Zum Beispiel:
# Ruby, <s>104</s> <s>101</s> 96 bytes
Wenn Sie mehrere Zahlen in Ihre Kopfzeile aufnehmen möchten (z. B. weil Ihre Punktzahl die Summe von zwei Dateien ist oder wenn Sie die Strafen für Interpreter-Flags separat auflisten möchten), stellen Sie sicher, dass die tatsächliche Punktzahl die letzte Zahl in der Kopfzeile ist:
# Perl, 43 + 2 (-p flag) = 45 bytes
Sie können den Namen der Sprache auch als Link festlegen, der dann im Leaderboard-Snippet angezeigt wird:
# [><>](http://esolangs.org/wiki/Fish), 121 bytes
Bestenliste
Hier ist ein Stack-Snippet, um sowohl eine reguläre Rangliste als auch eine Übersicht der Gewinner nach Sprache zu generieren.
/* Configuration */
var QUESTION_ID = 87064; // Obtain this from the url
// It will be like https://XYZ.stackexchange.com/questions/QUESTION_ID/... on any question page
var ANSWER_FILTER = "!t)IWYnsLAZle2tQ3KqrVveCRJfxcRLe";
var COMMENT_FILTER = "!)Q2B_A2kjfAiU78X(md6BoYk";
var OVERRIDE_USER = 48934; // This should be the user ID of the challenge author.
/* App */
var answers = [], answers_hash, answer_ids, answer_page = 1, more_answers = true, comment_page;
function answersUrl(index) {
return "https://api.stackexchange.com/2.2/questions/" + QUESTION_ID + "/answers?page=" + index + "&pagesize=100&order=desc&sort=creation&site=codegolf&filter=" + ANSWER_FILTER;
}
function commentUrl(index, answers) {
return "https://api.stackexchange.com/2.2/answers/" + answers.join(';') + "/comments?page=" + index + "&pagesize=100&order=desc&sort=creation&site=codegolf&filter=" + COMMENT_FILTER;
}
function getAnswers() {
jQuery.ajax({
url: answersUrl(answer_page++),
method: "get",
dataType: "jsonp",
crossDomain: true,
success: function (data) {
answers.push.apply(answers, data.items);
answers_hash = [];
answer_ids = [];
data.items.forEach(function(a) {
a.comments = [];
var id = +a.share_link.match(/\d+/);
answer_ids.push(id);
answers_hash[id] = a;
});
if (!data.has_more) more_answers = false;
comment_page = 1;
getComments();
}
});
}
function getComments() {
jQuery.ajax({
url: commentUrl(comment_page++, answer_ids),
method: "get",
dataType: "jsonp",
crossDomain: true,
success: function (data) {
data.items.forEach(function(c) {
if (c.owner.user_id === OVERRIDE_USER)
answers_hash[c.post_id].comments.push(c);
});
if (data.has_more) getComments();
else if (more_answers) getAnswers();
else process();
}
});
}
getAnswers();
var SCORE_REG = /<h\d>\s*([^\n,]*[^\s,]),.*?(\d+)(?=[^\n\d<>]*(?:<(?:s>[^\n<>]*<\/s>|[^\n<>]+>)[^\n\d<>]*)*<\/h\d>)/;
var OVERRIDE_REG = /^Override\s*header:\s*/i;
function getAuthorName(a) {
return a.owner.display_name;
}
function process() {
var valid = [];
answers.forEach(function(a) {
var body = a.body;
a.comments.forEach(function(c) {
if(OVERRIDE_REG.test(c.body))
body = '<h1>' + c.body.replace(OVERRIDE_REG, '') + '</h1>';
});
var match = body.match(SCORE_REG);
if (match)
valid.push({
user: getAuthorName(a),
size: +match[2],
language: match[1],
link: a.share_link,
});
});
valid.sort(function (a, b) {
var aB = a.size,
bB = b.size;
return aB - bB
});
var languages = {};
var place = 1;
var lastSize = null;
var lastPlace = 1;
valid.forEach(function (a) {
if (a.size != lastSize)
lastPlace = place;
lastSize = a.size;
++place;
var answer = jQuery("#answer-template").html();
answer = answer.replace("{{PLACE}}", lastPlace + ".")
.replace("{{NAME}}", a.user)
.replace("{{LANGUAGE}}", a.language)
.replace("{{SIZE}}", a.size)
.replace("{{LINK}}", a.link);
answer = jQuery(answer);
jQuery("#answers").append(answer);
var lang = a.language;
if (/<a/.test(lang)) lang = jQuery(lang).text();
languages[lang] = languages[lang] || {lang: a.language, user: a.user, size: a.size, link: a.link};
});
var langs = [];
for (var lang in languages)
if (languages.hasOwnProperty(lang))
langs.push(languages[lang]);
langs.sort(function (a, b) {
if (a.lang > b.lang) return 1;
if (a.lang < b.lang) return -1;
return 0;
});
for (var i = 0; i < langs.length; ++i)
{
var language = jQuery("#language-template").html();
var lang = langs[i];
language = language.replace("{{LANGUAGE}}", lang.lang)
.replace("{{NAME}}", lang.user)
.replace("{{SIZE}}", lang.size)
.replace("{{LINK}}", lang.link);
language = jQuery(language);
jQuery("#languages").append(language);
}
}
body { text-align: left !important}
#answer-list {
padding: 10px;
width: 290px;
float: left;
}
#language-list {
padding: 10px;
width: 290px;
float: left;
}
table thead {
font-weight: bold;
}
table td {
padding: 5px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<link rel="stylesheet" type="text/css" href="//cdn.sstatic.net/codegolf/all.css?v=83c949450c8b">
<div id="answer-list">
<h2>Leaderboard</h2>
<table class="answer-list">
<thead>
<tr><td></td><td>Author</td><td>Language</td><td>Size</td></tr>
</thead>
<tbody id="answers">
</tbody>
</table>
</div>
<div id="language-list">
<h2>Winners by Language</h2>
<table class="language-list">
<thead>
<tr><td>Language</td><td>User</td><td>Score</td></tr>
</thead>
<tbody id="languages">
</tbody>
</table>
</div>
<table style="display: none">
<tbody id="answer-template">
<tr><td>{{PLACE}}</td><td>{{NAME}}</td><td>{{LANGUAGE}}</td><td>{{SIZE}}</td><td><a href="{{LINK}}">Link</a></td></tr>
</tbody>
</table>
<table style="display: none">
<tbody id="language-template">
<tr><td>{{LANGUAGE}}</td><td>{{NAME}}</td><td>{{SIZE}}</td><td><a href="{{LINK}}">Link</a></td></tr>
</tbody>
</table>
Antworten:
Excel, 19.604 Bytes
Füge diese Formel ein
A1
und ziehe sie über die gesamte FlächeA1:Z26
.Byteanzahl:
quelle
A1:Z26
in das Namensfeld (links von der Formelleiste) [ 7 Bytes] ein; (2) geben Sie=CHAR(64+MAX(COLUMN(),ROW()))
+ in die Formelleiste ein [ 30 Bytes]; (3) Geben Sie einAlt E I D Alt E I R
, um den ausgewählten Bereich [ 8 Bytes] auszufüllen . Insgesamt 7 + 30 + 8 = 45 .[A1:Z26]="=CHAR(64+MAX(COLUMN(),ROW()))"
ist 40 Bytes und ist immer noch elegantVim, 43 Bytes
Hier
↵
repräsentiert Return (0x0a
) und♥
repräsentiert Ctrl-R (0x12
).Nicht ganz so kurz wie meine Tabula Recta-Antwort, aber ...
quelle
h<_↵
bringt es mich zu:help at_t
v_b_<_example
in Vim 7.4 für Cygwin.Gelee, 6 Bytes
Probieren Sie es hier aus. Wenn ich gestern nicht faul gewesen wäre und diese Ein-Byte-Alternative implementiert hätte
j⁷
(durch Zeilenumbruch verbinden) ...quelle
Y
.Y
Beitrag stellt die Herausforderung darBrainfuck,
10396959187 BytesHierbei wird die Brainfuck-Konstante von Esolangs für 64 verwendet . Probieren Sie es online!
quelle
/// ,
141949282 BytesProbieren Sie es online aus: Demonstration
Eine sehr lustige Sprache.
Erläuterung:
Kurzer Code, um nur ein 4x4-Quadrat zu drucken:
Der erste Ersatz
/:/\\\\A/
ersetzt:
durch\\A
. Das gibt:Dann
/#/\\Ab\\Ac\\Ad\\A//\\A/
ersetzt#
mit\Ab\Ac\Ad\A
:Nun
/\\A/\/a\Ab\Ac\Ad\A<newline>\/a\//
ersetzt jede\A
in den nachfolgenden Code durch/aAbAcAdA<newline>/a/
, so ergibt sich:Jetzt entfernt der erste Teil
/A//
alleA
s.Die ersten fünf Zeichen
abcd<newline>
werden gedruckt. Der nächste Befehl wird/a/b/
ersetzta
durchb
:Wieder werden die ersten fünf Zeichen
bbcd<newline>
gedruckt. Der nächste Befehl/b/c/
ersetztb
durchc
:Wieder werden die ersten fünf Zeichen
cccd<newline>
gedruckt. Der nächste Befehl/c/d/
ersetztc
durchd
:Die ersten fünf Zeichen
dddd<newline>
werden gedruckt. Und der nächste Befehl/d/
ist unvollständig und macht deshalb nichts.quelle
Dyalog APL , 11 Bytes
A[
...]
Elemente aus dem Großbuchstaben gemäß∘.⌈⍨
der Maximaltabelle⍳26
der ersten 26 Ganzzahlen auswählenTryAPL online!
quelle
Mathematica,
696557 Bytes8 Bytes aufgrund von @MartinEnder gespeichert .
Anonyme Funktion. Nimmt keine Eingabe an und gibt eine Zeichenfolge als Ausgabe zurück. Grundsätzlich gilt nur
char('A' + max(x, y))
für alle x , y von 1 bis 26.quelle
/// 348 Bytes
Probieren Sie es online!
Ich habe die gleiche Technik verwendet, um dies zu erstellen wie für meine Antwort auf die Herausforderung, auf der dies basierte . Ich musste das CJam-Skript jedoch korrigieren, da es Teilzeichenfolgen , die sich überlappen können, nicht richtig handhabte .
quelle
Retina , 41 Bytes
Die Anzahl der Bytes setzt die Kodierung nach ISO 8859-1 voraus. Der Zeilenvorschub ist signifikant.
Erläuterung
Stellen Sie die Zeichenfolge auf 26 Kopien von ein
Z
. Dann{...}
weist die Retina an, die verbleibenden zwei Anweisungen in einer Schleife auszuführen, bis sich die Zeichenfolge nicht mehr ändert.Dupliziere die erste Zeile, wenn sie nicht mit einem beginnt
A
.Dies ist eine Transliterationsphase. Es wird nur angewendet, wenn die Zeichenfolge mit mindestens zwei Kopien desselben Zeichens beginnt. In diesem Fall werden alle Zeichen bis auf das letzte dekrementiert. Die Dekrementierung erfolgt durch Mapping
L
(Großbuchstaben) auf_L
(Leerzeichen gefolgt von Großbuchstaben). Das "Alles bis auf das Letzte" wird durch das Limit angezeigt,-2
das Retina anweist, nur alle Zeichen bis zum vorletzten im Match zu transliterieren.Probieren Sie es online!
quelle
Haskell, 35 Bytes
quelle
Python 2, 59 Bytes
Teste es auf Ideone .
quelle
R, 58 Bytes
Dank der Operator-Priorität
2:i-1
ist äquivalent zu1:(i-1)
. Verwendet die eingebaute KonstanteLETTERS
, die das Alphabet in Großbuchstaben enthält. Alles andere ist eher selbsterklärend.Verwendungszweck:
quelle
Sesos , 25 Bytes
Probieren Sie es online! Prüfen Debug , um den generierten SBIN-Code anzuzeigen.
Sesos Montage
Die obige Binärdatei wurde durch Zusammenstellen des folgenden SASM-Codes generiert.
Wie es funktioniert
Wir beginnen mit der Initialisierung des Bandes auf
ABCDEFGHIJKLMNOPQRSTUVWXYZ
. Das ist wie folgt.Schreiben Sie 26 in eine Zelle und lassen Sie das Band im folgenden Zustand.
Solange die Zelle unter dem Datenkopf nicht Null ist, gehen wir wie folgt vor.
Kopieren Sie die Nummer in die beiden Zellen links und fügen Sie der Kopie ganz links 64 hinzu .
Verschieben Sie die Kopie ganz links an die ursprüngliche Position und subtrahieren Sie dann 1 von der Kopie ganz rechts.
Der Vorgang stoppt nach 26 Iterationen, da die Kopie ganz rechts bis dahin 0 ist. Wir verschieben eine Zelle nach rechts, so dass der endgültige Zustand des Bands nach der Initialisierung wie folgt ist.
Jetzt können Sie die Ausgabe generieren, indem Sie den folgenden Vorgang wiederholen, bis die Zelle unter dem Datenkopf Null ist.
Zuerst verschieben wir den Inhalt der Zelle unter dem Datenkopf eine Einheit nach links und dann nach links bis zur letzten Zelle mit einem Inhalt ungleich Null.
Jetzt drucken wir alle Zellen, beginnend mit der unter dem Datenkopf, und bewegen uns nach rechts, bis wir eine 0- Zelle finden, die jede gedruckte Zelle nach dem Drucken inkrementiert. Nach dem Drucken
A
sieht das Band wie folgt aus.Jetzt bewegen wir uns nach rechts und drucken erneut alle Zellen, bis eine 0- Zelle angetroffen wird. Nach dem Drucken
BCDEFGHIJKLMNOPQRSTUVWXYZ
sieht das Band wie folgt aus.Jetzt schreiben wir 10 in die aktuelle Zelle, drucken das entsprechende Zeichen (Zeilenvorschub) und setzen die Zelle mit einem Aufruf von
get
bei leerer Eingabe auf Null , wobei das Band unverändert bleibt.Schließlich bewegen wir uns zu der letzten Stelle ungleich Null nach links und bereiten das Band für die nächste Iteration vor.
Die nächste Iteration ist ähnlich. Wir verschieben 66 zuerst eine Zelle nach links, drucken beide 66 Zellen (
BB
) und erhöhen sie auf 67 , drucken dann die verbleibenden Zellen ungleich Null nach rechts (CDEFGHIJKLMNOPQRSTUVWXYZ
) und platzieren schließlich den Datenkopf auf 67 , wobei wir das Band wie folgt belassen .Nach weiteren 24 Iterationen und nach dem Drucken
ZZZZZZZZZZZZZZZZZZZZZZZZZZ
und einem Zeilenvorschub verbleiben die Bänder im folgenden Zustand.Wenn Sie den Datenkopf nach links zur nächsten Zelle ungleich Null bewegen, bleibt er an seiner aktuellen Position. Die Zelle darunter ist also 0, und die Schleife wird beendet.
quelle
J, 13 Bytes
Online-Dolmetscher .
Erläuterung
quelle
Matlab / Octave,
4339 Bytes1 Byte entfernt, dank der Idee von @beaker
[...,'']
, das Konvertieren in char zu verwenden.Dies ist eine anonyme Funktion, die ein 2D-Zeichen-Array zurückgibt.
Probieren Sie es auf Ideone .
Erläuterung
gallery('minij',...)
gibt eine Matrix an, in der jeder Eintrag dem Minimum seiner Zeilen- und Spaltenindizes entspricht:Dies wird um 180 Grad gedreht mit
rot90(...,2)
:Die
91-...
Operation gibt die ASCII-Codes von Großbuchstaben an:Schließlich
[...,'']
verkettet horizontal mit einem leeren String. Dies hat den Effekt, dass in char konvertiert wird.quelle
gallery
gallery('maxij',...)
, oder? ;)PowerShell v2 +,
765240 ByteSchleifen von
65
bis89
. Bei jeder Iteration erstellen wir ein Array mit dem Komma-Operator, der aus der aktuellen Zahl$_
multipliziert mit der nachträglich inkrementierten Hilfsvariablen besteht$i++
und mit einem Array der aktuellen Zahl$_
bis verknüpft ist90
. Das ist in einem Char-Array-Cast gekapselt und-join
zu einer Zeichenfolge zusammengefasst. Bei der ersten Iteration würde dieses Array beispielsweise65..90
dem gesamten Alphabet entsprechen. Die zweite Iteration wäre66+66..90
, oder das ganze Alphabet mitB
wiederholten und neinA
.Diese werden alle am Programmende in der Pipeline belassen (als Array), und das Drucken auf die Konsole ist implizit (der Standardwert
.ToString()
für ein Array wird durch Zeilenvorschub getrennt, sodass wir ihn kostenlos erhalten).quelle
C #, 147 Bytes
Manchmal frage ich mich, warum ich es überhaupt versuche
edit: repariert es
Probieren Sie es online aus
quelle
MATL, 10 Bytes
Online-Demo (Wenn Sie Probleme mit diesem Interpreter haben, rufen Sie mich im MATL-Chat an . Außerdem finden Sie hier den TIO-Link, falls Sie Probleme haben.)
Erläuterung
quelle
Python 2,
767068 BytesSehr ähnlich zu meiner Antwort auf die verknüpfte Frage .
2 Bytes gespart dank @xnor (wieder)!
quelle
exec
infor
dem aktuellen Zeichen verwenden iteriert werden:for c in a:a[:i]=[c]*i;i+=1;print'%c'*26%tuple(a)
.Oktave, 26 Bytes
Probelauf auf ideone .
quelle
[...,'']
Trick05AB1E , 9 Bytes
Code:
Erläuterung:
Verwendet die CP-1252- Codierung. Probieren Sie es online! .
quelle
Javascript ES6, 81 Bytes
Selbsterklärend.
quelle
replace
over" zu verwenden,map
wenn Sie Zeichen für Zeichen durchlaufen.a.slice(y)
woher kommt die Variablea
kommen?R, 56 Bytes
Ich habe keinen Sprecher zum Kommentieren, aber die Antwort von @plannapus lässt sich ein wenig reduzieren auf:
Daraus ergibt sich die gleiche Ausgabe:
Wenn die Antwort als Matrix zulässig ist ( dh wie hier ), könnten wir 49 Bytes ausführen:
quelle
R ,
4241 BytesProbieren Sie es online!
Die nächst kürzere R-Antwort ist immer noch etwas zu lang, da sie zeilenweise ausgedruckt wird. Ich habe heute früher über eine andere Frage nachgedacht und festgestellt, dass ein viel kürzerer Ansatz für diese Frage möglich ist: Ich erstelle die Matrix auf einmal mit
outer
undpmax
(maximal parallel) und drucke sie dann in einem Schritt mit (*) auswrite
.(*) Technisch gesehen ist es transponiert, aber glücklicherweise symmetrisch über seine Diagonale.
quelle
Haskell,
5346 BytesGibt eine einzelne Zeichenfolge mit dem L-Phabet zurück.
Gehen Sie die Zeichen
i
vonA
bis durchZ
und erstellen Sie eine Liste der(length ['B'..i])
Kopien voni
gefolgt von[i..'Z']
. Verbinden Sie Elemente mit dazwischen liegenden Zeilenumbrüchen.quelle
Python 3,
7165 BytesVielen Dank an @LeakyNun für -6 Bytes
Ein vollständiges Programm, das auf STDOUT gedruckt wird.
Wie es funktioniert
Wir weisen den Buchstaben des Alphabets Zeichencodes zu, von
0
fürA
bis25
fürZ
. Das Programm durchläuft das Intervall[0, 25]
mit einem Zeilenzähleri
, der das aktuelle zu wiederholende Zeichen und die Länge des wiederholten Abschnitts sowie einen Zeichenindex bestimmtx
. Durch Aufrufenmax(i,x)
werden alle Zeichen unterhalb des wiederholten Zeichens an den Zeichencode desselben geklemmt. Durch Hinzufügen65
und Aufrufen werdenchr
die resultierenden Zeichencodes in ihre ASCII-Entsprechungen konvertiert.''.join
verkettet die Zeichen und jede Zeile wird auf STDOUT gedruckt.Probieren Sie es auf Ideone
quelle
𝔼𝕊𝕄𝕚𝕟 12 Zeichen / 15 Byte
Try it here (Chrome Canary only).
Grundsätzlich ein Port meiner ES6 Antwort.
quelle
ZZZZZZZZZZZZZZZ...
das Endergebnis nicht. Nur eins bekommenZ
.R, 54 Bytes
v=L=LETTERS;for(i in 2:26){L[1:i]=L[i];v=cbind(v,L)};v
Diese Lösung verwendet die eingebaute Konstante R
LETTERS
, die ... nun ... die Großbuchstaben auflistet. Es gibt auch die Konstanteletters
für Kleinbuchstaben.quelle
C
787067 BytesDer Code verwendet die folgenden Golftechniken für C:
stdio.h
)int
65
anstelle von'A'
)putchar
diese Taste, um ein einzelnes Zeichen auszugebenputs("")
um eine neue Zeile auszugebenAußerdem
If it is a function, it must be runnable by only needing to add the function call to the bottom of the program.
verbietet die Regel nicht, die Funktion mit Parametern aufzurufen (dank ABcDexter!).Probieren Sie es auf Ideone
Eine ungolfed version (ohne warnungen mit gcc) würde so aussehen:
quelle
f(i,j){for(i=0;++i<27;puts(""))for(j=0;++j<27;putchar((i>j?i:j)+64));}
. Sie benötigen kein vollständiges Programm, sondern nur eine Funktion, die jedes Mal, wenn sie aufgerufen wird, dieselben Vorgänge ausführt (was auch immer der Fall ist).i=0;
und die Funktion als aufrufenf(0,0)
?If it is a function, it must be runnable by only needing to add the function call to the bottom of the program.
scheint dies nicht zu verbieten, da sie nicht sagt, dass Wetterparameter für den Funktionsaufruf zulässig sind). Ich lasse esmain
einfachf(0)
trotzdem aufrufen , da die Initialisierung für die zweite for-Schleife (die mitj
als Zähler) trotzdem notwendig ist.Cheddar, 90 Bytes
Das
String.letters
ist zu lang: /Musste eine hinzufügen
.slice(1)
weil führende Newline nicht erlaubt istErläuterung
Cheddar, 65 Bytes (nicht konkurrierend)
Arbeitet mit dem nächtlichen Zweig . Nicht konkurrierend ... trauriger Teil ist, dass ich die Änderungen bereits hatte ... nur nie festgeschrieben; _;
quelle
65@"90
funktioniert für String.letters