Sortez le résultat suivant (qui est le résultat du calcul de 6 * 9 en bases de 2 à 36). Assurez-vous que les lettres sont en majuscules et que la multiplication elle-même est sortie sur chaque ligne.
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
Le code le plus court gagne.
code-golf
kolmogorov-complexity
Konrad Borowski
la source
la source
Calculate 6*9 in different bases
Je me demande pourquoi la déclaration est ainsi libellée, pourquoi6*9
et pas simplement54
? Peut-être que le sens initialement prévu était cela6
et9
devrait être interprété pas toujours comme décimal mais dans des bases différentes? Cela rendrait la déclaration plus logique et le problème plus intéressant (mais alors nous devrions commencer de la base 10 à 36)6
et9
sont des nombres à un chiffre. Ils signifient la même chose dans chaque base dans laquelle ces chiffres sont valides.6 * 9 = 110110
n'a pas beaucoup de sens ...Réponses:
05AB1E ,
2120 octetsEssayez-le en ligne!
la source
GolfScript, 39 caractères
Le résultat peut être vu ici .
la source
Octave, 49
for i=2:36printf("6 * 9 = %s\n",dec2base(54,i))end
la source
Javascript,
5755 octetsPeut être raccourci à 49 avec
alert
, mais je ne veux soumettre personne à cela ...la source
(54)
peut être remplacée par54.
(pour écrire54..toString
).for(i=1;++i<37;)
enregistre également un personnage.Rubis (47)
Eh bien, je sais que la solution GolfScript est meilleure, mais bon, au moins ce n'est pas ésotérique ...
la source
2.step{|t|puts"9 * 6 = "+54.to_s(t).upcase}
enregistre quelques octets. Il sort avec une erreur, mais qui est ok: D .Python, 89
la source
b=2
<linebreak>while b<37:print'6 * 9 =',B(54);b+=1
(en supposant un seul caractère pour un saut de ligne * nix)Python 2.7 (
124114)EDIT: Coupez quelques peluches grâce au commentaire de @ boothby ci-dessous
Je pense que Python se porte bien étant donné qu'il n'a pas de fonction intégrée (à ma connaissance) pour effectuer la conversion de base, donc cela doit être fait en code;
la source
print'\n'.join(...for x in y)
est plutôt plus long quefor x in y:print...
.Perl 6 , 36 octets
la source
Mathematica 40
Pas en litige (lettres minuscules utilisées):
la source
Julia, 61 ans
pour b = 2: 36; @printf ("6 * 9 =% s \ n", majuscule (base (b, 54))); fin
Assez indolore, à part se souvenir d'utiliser la macro @printf contre printf.
Base d'importation; pas besoin ...
la source
for b=2:36;println("6 * 9 = $(uppercase(base(b,54)))");end
c'est aussi bon ...Perl
J'ai dû utiliser le module Math :: BaseCnv
35 caractères sans la
use
déclaration:54 caractères avec la
use
déclaration:Je ne sais pas comment vous noteriez cela, donc les deux sont inclus.
La structure de carte BLOCK LIST a été utilisée. La liste est la plage 2 à 36, qui a été demandée. La viande est dans la
cnv($NUMBER, $BASE)
fonction et la carte est une boucle implicite.la source
use
déclaration. Le premier ne fonctionne pas dans mon perl.J -
7870Haskell - 137
la source
CoffeeScript 71
Lien
la source
C (
166151)Débarrassé de certains caractères inutiles et changé certaines déclarations. Suppose que vous exécutez le programme sans arguments.
la source
Clojure, 75
(for[i(range 2 37)](println"6 * 9 ="(.toUpperCase(Integer/toString 54 i))))
la source
Python 3, 83 octets
la source
'\n'.join('6 * 9 = '+numpy.base_repr(54,i)for i in range(2,37))
au lieu de*['6 * 9 = '+numpy.base_repr(54,i)for i in range(2,37)],sep='\n'
pour enregistrer un octet.Fléchette, 75 octets
Dart est un peu bavard en ce qui concerne le stdlib, mais bon ... au moins vous pouvez le lire: P
la source
Scala, 71
la source
Lisp commun: 56 caractères
la source
Sage, 48 ans:
Honte Sage imprime en minuscules ... Je ne serais qu'un sur Howard. Ou, je suppose, faux et à égalité avec David Carraher.
la source
Forth, 54
la source
/// , 133 octets
Essayez-le en ligne!
la source
SpecBAS - 48 octets
SpecBAS est en fait assez compétitif pour un changement :-)
la source
8ème ,
6562 octetsCeci est un programme complet. Quitter après l'exécution
Explication
la source