Schreiben Sie zwei Programme in Form eines Dreiecks (dh einer Pyramide).
Das erste sollte ein nach oben zeigendes Textdreieck mit einer Mindestbasisbreite von drei Zeichen sein. Es hätte also eine Struktur wie
X
XXX
oder
X
XXX
XXXXX
oder
X
XXX
XXXXX
XXXXXXX
oder größer. Jedes X
der Zeichen muss durch die Zeichen Ihres tatsächlichen Codes ersetzt werden. Dies kann alles andere als ein Zeilenabschluss sein (daher können die Zeichen X
Leerzeichen sein). Alle X
müssen ersetzt werden, und die Leerzeichen und Zeilenumbrüche, die zur Bildung der Dreiecksform beitragen, müssen unverändert bleiben.
Das zweite Programm muss dieselbe Größe und Form haben wie das erste, außer dass das Dreieck nach unten zeigt.
Also wenn dein erstes Programm so aussieht
X
XXX
XXXXX
dann würde dein zweites programm so aussehen
yyyyy
yyy
y
wobei jedes y
Zeichen ein Zeichen ist, das Sie mit Ihrem tatsächlichen Code ausfüllen müssen (wahrscheinlich anders als Ihr X
Code). Die Leerzeichen und Zeilenumbrüche müssen auch hier gleich bleiben.
Ihre Aufgabe ist es, diese Programme so zu schreiben, dass sie jeweils den Titel eines bestimmten Beatles- Songs ausgeben (zur Standard- oder nächsthöheren Alternative) , ohne dass Eingaben erforderlich sind. Dieser Wikipedia-Artikel dient als offizielle Songliste für die Beatles. Die Ausgabe sollte einer der Titel genau wie aufgelistet sein, z I Want You (She's So Heavy)
.
Dies ist jedoch trotz der seltsamen Dreieck-Programmanforderung ziemlich einfach. Wir werden also aus den ersten beiden Programmen ein weiteres Programm formen, das einen weiteren Songtitel ausgeben muss.
Durch Kombinieren von drei Kopien der beiden Dreiecksprogramme können wir ein drittes Programm in Form eines Sechsecks erstellen.
Wenn die Basisbreite Ihres ersten Programms drei wäre, würde das so aussehen:
XyyyX
XXXyXXX
yyyXyyy
yXXXy
Wenn die Basisbreite fünf wäre, würde das so aussehen:
XyyyyyX
XXXyyyXXX
XXXXXyXXXXX
yyyyyXyyyyy
yyyXXXyyy
yXXXXXy
Dieses Programm (wenn es mit Leerzeichen und Zeilenumbrüchen wie die anderen ausgeführt wird) muss genau wie die ersten beiden Programme einen anderen Beatles-Songtitel ausgeben. Ebenfalls:
- Ihre drei Programme müssen unterschiedliche Songtitel ausgeben.
- Es sind nur Songtitel mit einer Länge von mindestens acht Zeichen zulässig.
- Sie können nur einen auswählen
Revolution
,Revolution 1
undRevolution 9
weil die Titel so ähnlich sind. - Sie müssen Ihre drei Lieblings-Beatles-Songs auswählen. (Nun, versuchen Sie es.)
Beachten Sie, dass tatsächliche Programme erforderlich sind. Funktionen sind nicht erlaubt. Das Lesen des eigenen Quellcodes in einem Programm ist ebenfalls nicht gestattet.
Beispiel
Wenn dein erstes Programm war
A
AAA
AAAAA
es könnte ausgeben Across the Universe
.
Dann dein zweites Programm
bbbbb
bbb
b
könnte ausgeben Revolution
.
Dann kombiniert in das Sechseck-Programm
AbbbbbA
AAAbbbAAA
AAAAAbAAAAA
bbbbbAbbbbb
bbbAAAbbb
bAAAAAb
die Ausgabe könnte sein Get Back
.
Wertung
Die Einsendung mit der kleinsten Dreiecksgrundbreite gewinnt. Im wahrscheinlichen Fall von Unentschieden gewinnt die Einreichung mit der größten summierten Länge ihrer drei Songtitel.