Polygone werden nach der Anzahl der Seiten benannt, die sie haben. Ein Fünfeck hat 5 Seiten, ein Achteck hat 8 Seiten. Aber wie heißen sie? Wie heißt ein 248-seitiges Polygon?
Alle Polygone sind mit einem Suffix versehen -gon
. Abhängig von der Anzahl der Seiten gibt es für jedes Polygon spezifische Präfixe. Hier sind die Präfixe für die niedrigeren Zahlen:
3 - tri
4 - tetra
5 - penta
6 - hexa
7 - hepta
8 - octa
9 - nona
10 - deca
11 - undeca
12 - dodeca
13 - triskaideca
14 - tetradeca
15 - pentadeca
16 - hexadeca
17 - heptadeca
18 - octadeca
19 - nonadeca
20 - icosa
Polygone mit 21 bis 99 Seiten haben ein anderes System. Nehmen Sie das Präfix für die Zehnerstelle (in der linken Spalte) und die Einerstelle (in der rechten Spalte unten) und kleben Sie dann ein "kai" dazwischen, um zu erhalten (tens)kai(ones)gon
.
10 - deca | 1 - hena
20 - icosi | 2 - di
30 - triaconta | 3 - tri
40 - tetraconta | 4 - tetra
50 - pentaconta | 5 - penta
60 - hexaconta | 6 - hexa
70 - heptaconta | 7 - hepta
80 - octaconta | 8 - octa
90 - nonaconta | 9 - nona
Die dreistelligen Polygone werden auf ähnliche Weise benannt. Ein 100-seitiges Polygon wird als Hektogon bezeichnet. Nehmen Sie die Hunderterstelle, suchen Sie sie in der Spalte mit den Einerstellen und kleben Sie ein "Hekta" rechts daneben. Jetzt Anzahl von den Zehner und wie oben: (hundreds)hecta(tens)kai(ones)gon
. Wenn die Hunderterstelle eine 1 ist, setzen Sie das Präfix nicht hinter "Hekta". Wenn die Einerstelle 0 ist, lassen Sie den Abschnitt (Einsen) weg.
Geben Sie bei einer Ganzzahl (3 <= n <= 999) den Namen eines n-seitigen Polygons zurück. n-gon
ist keine gültige Antwort: P
Wie bei jedem Codegolf gewinnt der kürzeste Code.
ennea-
, aber ich habe öfter "nonagon" als "enneagon" gehört, also bin ich damit umgegangen.deca
, danke, dass Sie darauf hingewiesen haben. 110 Hektadekagon, 120 Hektaicosigon. 101 - Hektakaihenagon.Antworten:
C
401, 391Lasst uns etwas da draußen platzieren, damit es mindestens eine Antwort als Referenz gibt :-)
Testen Sie mit:
Teilmenge der Ausgabe:
quelle
if..else
mit?:
(und;
mit,
) um ein paar Zeichen zu speichern. Aucht>1&&p(t)
und ähnliche Änderungen können helfen. Und ich bin mir nicht sicher, aber vielleicht könnten Sie es neu anordnen,s
sodass die von Ihnen verwendeten Konstanten einstellig sind.JavaScript -
405386Version 1: (405 Zeichen)
Version 2: (386 Zeichen)
Ausgabebeispiel:
quelle
Cobra - 370 Bytes
Dies ist momentan eine Funktion, aber wenn das nicht erlaubt ist, ändere ich es.
Und aus irgendeinem Grund hat der Cobra-Textmarker
//
einen Kommentar gesetzt, was falsch ist.quelle