Geben Sie das folgende Ergebnis aus (das ein Ergebnis der Berechnung von 6 * 9 in Basen von 2 bis 36 ist). Stellen Sie sicher, dass die Buchstaben in Großbuchstaben geschrieben sind und die Multiplikation selbst in jeder Zeile ausgegeben wird.
6 * 9 = 110110
6 * 9 = 2000
6 * 9 = 312
6 * 9 = 204
6 * 9 = 130
6 * 9 = 105
6 * 9 = 66
6 * 9 = 60
6 * 9 = 54
6 * 9 = 4A
6 * 9 = 46
6 * 9 = 42
6 * 9 = 3C
6 * 9 = 39
6 * 9 = 36
6 * 9 = 33
6 * 9 = 30
6 * 9 = 2G
6 * 9 = 2E
6 * 9 = 2C
6 * 9 = 2A
6 * 9 = 28
6 * 9 = 26
6 * 9 = 24
6 * 9 = 22
6 * 9 = 20
6 * 9 = 1Q
6 * 9 = 1P
6 * 9 = 1O
6 * 9 = 1N
6 * 9 = 1M
6 * 9 = 1L
6 * 9 = 1K
6 * 9 = 1J
6 * 9 = 1I
Kürzester Code gewinnt.
code-golf
kolmogorov-complexity
Konrad Borowski
quelle
quelle
Calculate 6*9 in different bases
Ich frage mich, warum die Aussage so formuliert ist, warum6*9
und nicht einfach54
? Vielleicht war die ursprünglich beabsichtigte Bedeutung das6
und9
sollte nicht immer als Dezimalzahl interpretiert werden, sondern auf verschiedenen Grundlagen? Das würde die Aussage logischer und das Problem interessanter machen (aber dann sollten wir von Basis 10 bis 36 beginnen)6
und9
sind einstellige Zahlen. Sie bedeuten in jeder Basis, in der diese Ziffern gültig sind, dasselbe.6 * 9 = 110110
macht nicht viel Sinn ...Antworten:
05AB1E ,
2120 BytesProbieren Sie es online!
quelle
GolfScript, 39 Zeichen
Ergebnis ist zu sehen, hier .
quelle
Oktave, 49
for i=2:36printf("6 * 9 = %s\n",dec2base(54,i))end
quelle
Javascript,
57-55BytesKönnte mit auf 49 gekürzt werden
alert
, aber ich möchte niemanden dem unterwerfen ...quelle
(54)
kann durch54.
(zum Schreiben54..toString
) ersetzt werden.for(i=1;++i<37;)
speichert auch einen Charakter.Rubin (47)
Nun, ich weiß, dass die GolfScript-Lösung besser ist, aber hey, zumindest ist das nicht esoterisch ...
quelle
2.step{|t|puts"9 * 6 = "+54.to_s(t).upcase}
spart ein paar Bytes. Es tritt mit einem Fehler, aber das ist ok: D .Python, 89
quelle
b=2
<Zeilenumbruch>while b<37:print'6 * 9 =',B(54);b+=1
(unter der Annahme eines einzelnen Zeichens für einen * nix-Zeilenumbruch)Python 2.7 (
124114)BEARBEITEN: Schneiden Sie einige Flusen dank @ boothbys Kommentar unten
Ich denke, dass Python in Ordnung ist, wenn man bedenkt, dass es kein eingebautes Programm (das ich kenne) hat, um die Basiskonvertierung durchzuführen, so dass es im Code erfolgen muss.
quelle
print'\n'.join(...for x in y)
ist eher länger alsfor x in y:print...
.Perl 6 , 36 Bytes
quelle
Mathematica 40
Nicht in Konflikt (Kleinbuchstaben verwendet):
quelle
Julia, 61
für b = 2: 36; @printf ("6 * 9 =% s \ n", Großbuchstaben (Basis (b, 54)); Ende
Ziemlich schmerzlos, abgesehen davon, dass Sie nicht vergessen haben, das Makro @printf im Vergleich zu printf zu verwenden.
Basis importieren; nicht benötigt ...
quelle
for b=2:36;println("6 * 9 = $(uppercase(base(b,54)))");end
ist auch gut ...Perl
Musste das Math :: BaseCnv-Modul verwenden
35 Zeichen ohne die
use
Aussage:54 Zeichen mit der
use
Aussage:Nicht sicher, wie Sie dies bewerten würden, daher sind beide enthalten.
Die Map-BLOCK-LIST-Struktur wurde verwendet. Liste ist der Bereich 2 bis 36, der angefordert wurde. Das Fleisch ist in der
cnv($NUMBER, $BASE)
Funktion, und die Karte ist eine implizite Schleife.quelle
use
Aussage. Der erste funktioniert nicht in meinem Perl.J -
7870Haskell - 137
quelle
CoffeeScript 71
Verknüpfung
quelle
C (
166151)Einige unnötige Zeichen wurden entfernt und einige Deklarationen geändert. Angenommen, Sie führen das Programm ohne Argumente aus.
quelle
Clojure, 75
(for[i(range 2 37)](println"6 * 9 ="(.toUpperCase(Integer/toString 54 i))))
quelle
Python 3, 83 Bytes
quelle
'\n'.join('6 * 9 = '+numpy.base_repr(54,i)for i in range(2,37))
anstelle von*['6 * 9 = '+numpy.base_repr(54,i)for i in range(2,37)],sep='\n'
ein Byte speichern.Dart, 75 Bytes
Dart ist ein bisschen wortreich, wenn es um die Stdlib geht, aber hey ... zumindest kannst du es lesen: P
quelle
Scala, 71
quelle
Common Lisp: 56 buchstaben
quelle
Salbei, 48:
Schande, dass Salbei in Kleinbuchstaben druckt ... Ich wäre nur einer über Howard. Oder ich glaube, falsch und mit David Carraher verbunden.
quelle
Forth, 54
quelle
/// 133 Bytes
Probieren Sie es online!
quelle
SpecBAS - 48 Bytes
SpecBAS ist zur Abwechslung eigentlich recht konkurrenzfähig :-)
quelle
8. ,
6562 BytesDies ist ein vollständiges Programm. Beenden Sie nach der Ausführung
Erläuterung
quelle