Voici une liste des 118 éléments (actuels) du tableau périodique (dans un extrait de pile réduit pour votre commodité):
Remarque: Cette liste a été trouvée en exécutant le code JavaScript suivant sur cette page Wikipedia :[].slice.call($('.wikitable:first tr td:nth-child(3)').map(function(){return this.innerText})).slice(1,-1).join('\n')
Votre défi est d'en produire autant que possible, dans autant de langues que possible. Cet objectif est encore plus compliqué par le fait que les éléments radioactifs rongent lentement vos personnages utilisables restants au fur et à mesure!
Règles
Votre réponse comprendra de 1 à 95 extraits de code.
Chaque extrait de code doit être dans un langage de programmation différent. Aux fins de ce défi, j'utilise une définition très vague de «langue»: tout ce qui n'est pas rétrocompatible est une langue différente. Par exemple, si tout le code Lang A fonctionne en Lang B mais Lang B en ajoute plus, alors ils sont considérés comme la même langue. Mais Python 2 et Python 3 sont considérés comme différents, car il
print 'foo'
est valide en Python 2 mais pas en Python 3.Le premier extrait de code peut utiliser tout ou partie des 95 caractères ASCII imprimables. Dans le deuxième extrait, un caractère ASCII de votre choix sera interdit. Dans le troisième extrait, ce personnage plus un autre de votre choix doivent être interdits. Etc. Les tabulations et les nouvelles lignes ne sont jamais interdites.
Le caractère interdit doit avoir été utilisé dans l'extrait précédent, pas dans un commentaire, un littéral de chaîne, etc.; il doit en fait être interprété par le compilateur / interprète. Par exemple, si mon premier extrait est
print 'Hydrogen'
, je ne peux pas&
interdire car je ne l'ai pas utilisé. Mes choix sont l' un des personnagesp
,r
,i
,n
,t
,ou
'
(je ne peux pas utiliserH
,y
,d
, ... parce que ceux -ci sont dans un littéral de chaîne). Il est désormais interdit au personnage que vous choisissez d'apparaître dans les extraits suivants.Chaque extrait de code doit générer un élément unique du tableau périodique (figurant dans la liste ci-dessus). La "sortie" peut être effectuée par n'importe quelle méthode que vous souhaitez: STDOUT, une boîte d'alerte (ex. Dans JS), la "sortie" REPL (gardez à l'esprit que si elle comprend des guillemets, elle n'est pas valide), l'écriture dans un fichier, etc.
Vous devez prendre aucune entrée, ou une chaîne vide en entrée (pour les langues comme sed).
Vous ne pouvez pas utiliser de fonctions intégrées qui renvoient le nom de l'élément (par exemple,
ElementData
dans Mathematica).
Mise en page
Veuillez formater votre réponse au format suivant:
### 1. Language A - none forbidden
code
Optional commentary on this snippet goes here.
### 2. Language B - `a` forbidden
code
More optional commentary
### 3. Language C - `ab` forbidden
code
More optional commentary
etc.
Si les backticks ( `
) sont interdits, utilisez simplement deux backticks autour de la liste. Par exemple, ``ab`cd``
entraînera ab`cd
. (Si le point arrière est le premier ou le dernier caractère, vous devez également remplir les points arrière externes avec des espaces; ex. `` abc` ``
-> abc`
.)
Notation
La réponse avec le plus de langages de programmation gagnera. En cas d'égalité, la réponse avec le plus petit nombre de caractères cumulés de tous les programmes gagnera.
Cette question s'en est inspirée.
la source
cout<<"Hydrogen";
en C ++? Faut-il inclure desinclude
s dans le code? Un programme doit-il imprimer une nouvelle ligne après le nom de l'élément?Réponses:
95 langues (tous les caractères utilisés!)
(TODO: quelques réponses supplémentaires que j'ai planifiées mais non mises en œuvre)
1. COBOL - interdit
A
Impressions
Ununtrium
.2. REBOL - interdit
B
Impressions
Tellurium
.3. bc - interdit
^
Impressions
Strontium
.4. D - interdit
D
Impressions
Ruthenium
.5. Java - interdit
E
Impressions
Aluminium
.6. Scala - interdit
F
Impressions
Plutonium
.7. Rouille - interdit
G
Impressions
Americium
.8. Nim - interdit
&
Impressions
Neptunium
.9. C # - interdit
C
Impressions
Neodymium
.10. Burlesque - interdit
%
Impressions
Manganese
.11. Nemerle - interdit
I
Impressions
Magnesium
.12. Ada - interdit
J
Impressions
Palladium
.13. Aller - interdit
|
Impressions
Germanium
.14. K - interdit `` ''
Impressions
Ytterbium
.15. Erlang - interdit
/
Impressions
Beryllium
.16. Prolog - interdit
:
Impressions
Berkelium
.17. Smalltalk - interdit
K
Impressions
Lanthanum
.18. PARI / GP - interdit
L
Impressions
Potassium
.19. REXX - interdit
M
Impressions
Tungsten
.20. LilyPond - interdit
N
Impressions
Flevorium
.21. Arc - interdit
Q
Impressions
Antimony
.22. LISP commun - interdit
R
Impressions
Tantalum
.23. Clojure - interdit
U
Impressions
Selenium
.24. Logo - interdit
Z
Impressions
Scandium
.25. Groovy - interdit
W
Impressions
Samarium
.26. Asymptote - interdit
X
Impressions
Rubidium
.27. Octave - interdit
Y
Impressions
Yttrium
.28. gnuplot - interdit
V
Impressions
Vanadium
.29. Kite - interdit
z
Impressions
Nobelium
.30. Écureuil - interdit
_
Impressions
Nitrogen
.31. Curry - interdit
v
Impressions
Lutetium
.32. Fortran - interdit
q
Impressions
Thallium
.33. Pascal - interdit
l
Impressions
Francium
.34. PHP - interdit
k
Impressions
Fluorine
.35. Haskell - interdit
S
Impressions
Sodium
.36. C ++ - interdit
~
Impressions
Actinium
.37. ObjC - interdit
j
Impressions
Hydrogen
.38. Lua - interdit
g
Impressions
Astatine
.39. JavaScript - interdit
b
Alertes
Chlorine
.40. Bash - interdit
h
Impressions
Osmium
.41. Cyan - interdit
o
Impressions
Hassium
.42. J - interdit
d
Impressions
Titanium
.43. Régime - interdit
x
Impressions
Vanadium
.44. C - interdit
{
Impressions
Uranium
.45. FORTH - interdit
m
Impressions
Thorium
.46. BASIC - interdit
T
Impressions
Tin
.47. Perl 6 - interdit
y
Impressions
Terbium
.48. Asdf - interdit
a
Impressions
Arsenic
. Génération d'un script .49. Tcl - interdit
s
Impressions
Silicon
.50. Perl - interdit
;
Impressions
Rhodium
.51. Python - interdit
r
Impressions
Chromium
.52. WARP - interdit
=
Impressions
Rhenium
.53. ETA - interdit
n
Impressions
Bromine
.54. Axo - interdit
\
Impressions
Thulium
.55. Ruby - interdit
t
Impressions
Europium
.56. DBFV! - interdit
u
Impressions
Niobium
. Chaque espace est en fait une nouvelle ligne.57. Souris - interdit
'
Impressions
Mercury
.58. Word - interdit
f
Impressions
Cadmium
.59. Ftack - interdit
$
Impressions
Lithium
.60. WASD - interdit
e
Nous introduisons le concept de la solution triviale de Brainfuck (TBS): nous pouvons imprimer n'importe quel caractère dans 257 commandes Brainfuck en incrémentant l'accumulateur c fois, en le sortant, puis en l'incrémentant (256- c ) plusieurs fois pour le réinitialiser. Répéter cela pour chaque caractère de la chaîne donne la solution. Chaque fois que nous avons deux sous
i
- programmes eto
qui fonctionnent exactement comme Brainfuck+
et.
, nous appelons le TBS traduit le (i
,o
) -TBS.Au lieu d'enrouler, nous pourrions être en mesure de mettre l'accumulateur à zéro après l'impression en utilisant un sous-programme
o'
. C'est le (i
,o'
TBS ) zéro.Alternativement, nous pourrions n'avoir aucun habillage mais un sous
d
- programme qui décrémente l'accumulateur. C'est la (i
,o
,d
) -TBS.Pour WASD a (
w
,e
) -TBS imprimeSilver
.61. URSL - interdit
w
A (
i1
,w1
,c1
) -TBS impressionsKrypton
.62. Emmental - interdit
#
Impressions
Iridium
.63. Chouette - interdit
?
Impressions
Sulfur
.64. RUBE - interdit
)
Impressions
Holmium
.65. Headsecks - interdit
(
A (
(
,"
) -TBS imprimeBohrium
.66. FAUX - interdit
[
Impressions
Gallium
.67. Betterave - interdit
-
Impressions
Hafnium
.68. Kipple - interdit
>
Impressions
Fermium
.69. GolfScript - interdit
]
Impressions
Dubnium
.70. FlogScript - interdit
"
Impressions
Calcium
.71. OOo CODE - interdit
p
A (
PpP
,PPp
) -TBS imprimeBismuth
.72. dc - interdit
P
Impressions
Cadmium
.73. Capuirequiem - interdit
O
Impressions
Radium
.74. BitChanger - interdit
}
Impressions
Cobalt
.75. Vrejvax - interdit
<
Impressions
Cerium
.76. Fueue - interdit
H
Impressions
Polonium
.77. Pi - interdit
6
Exécuter à
bf2pi
partir de l'article wiki sur une solution Brainfuck triviale à imprimerXenon
.78. CJam - interdit
5
Impressions TBS (
1+
,c 0
) à zéro (avec0
ajout)Nickel
.79. Wordfuck - interdit
9
A (
9999
,99
) -TBS imprimeCarbon
.80. Lenguage - interdit
7
Voir 91-94 (à utiliser uniquement
7
.) ImpressionsRadon
.81. Binaryfuck (hexadécimal) - interdit
4
Impressions
Barium
.82. CaneCode - interdit
8
A (
1
,8
) -TBS imprimeIodine
.83. Numberwang - interdit
3
A (
2
,3
) -TBS s'imprimeIndium
, mais diminue2
au lieu d'incrémenter, donc soustrayez chaque code de caractère de 256 en premier.84. ferNANDo - interdit
2
Impressions
Argon
.85. Unfunge-98 - interdit
@
Ajout
0
d'un TBS à zéro (1+
,,0
) et ajout de l'@
impressionHelium
.86. Tourbillon - interdit
1
Préparation
One Load Zero
à une impression TBS à zéro (Add
,AscIO Zero
)Boron
.87. ReverseFuck - interdit
,
A (
-
,,
) -TBS imprimeErbium
.88. Brainfuck - interdit
+
A (
+
,.
) -TBS imprimeCurium
.89. Poisson mort ~ - interdit
c
Un (
i
,c
) -TBS imprimeCopper
.90. Iota - interdit
i
Nous calculons un décodage en base de 256 chiffres
Zinc
pour compenser le manque d'IO d'Iota. DéfinirEnsuite, la solution est 1516858978 répétitions de
succ
suivi de*ii
, pour une longueur totale de 69775512991 octets.Programmes de type unaire
Les quatre solutions suivantes (et 70) sont similaires: elles consistent toutes en environ 3 ^ (257 * 4 * 3) répétitions du caractère qu'elles interdisent (sauf que Ellipsis est trois fois plus long). La valeur exacte est décidée en convertissant le TBS en octal comme décrit sur le wiki.
91. Ellipsis - interdit
.
Impressions
Neon
.92. Extatique - interdit
!
Impressions
Lead
.93. MGIFOS - interdit
*
Impressions
Iron
.94. Unaire - interdit
0
Impressions
Gold
.95. Espace blanc Espace - interdit l'espace
Le programme Whitespace généré par ce script Python:
impressions
Oxygen
.la source
x
", je veux vraiment dire "l'utilisex
et l'interdit pour les prochaines solutions". Sinon, la chaîne est devenue ingérable.51 langues
Je pourrais ajouter quelque chose plus tard, mais voici 51 langues.
1. Java - aucun interdit
2. C ++ -
J
interdit3. C -
JQ
interdit4. D -
JQW
interdit5. Nimrod -
JQWz
interdit6. Fortran-95 -
JQWzq
interdit7. Lot -
JQWzqY
interdit8. Befunge -
JQWzqY%
interditPolonium de sortie.
9. Vala -
JQWzqY#%
interdit10. Bash -
JQWzqY#%@
interdit11. ECMAScript 6 -
JQWzqY#%@~
interdit12. Perl 5 -
JQWzqY#%@~`
interdit13. Scala -
JQWzqY#%@~`_
interdit14. Perl 6 -
JQWzqY#%@~`_:
interdit15. Python 2 -
JQWzqY#%@~`_:j
interdit16. Python 3 -
JQWzqY#%@~`_:jL
interdit17. PHP -
JQWzqY#%@~`_:jLK
interdit18. Pascal -
JQWzqY#%@~`_:jLK$
interdit19. POGAACK -
JQWzqY#%@~`_:jLK$X
interditImprime l'hydrogène.
20. COW -
JQWzqY#%@~`_:jLK$Xg
interditImprime du plutonium.
21. Blub -
JQWzqY#%@~`_:jLK$XgM
interditImprime Flerovium.
22. Ook! -
JQWzqY#%@~`_:jLK$XgMB
interditImprime l'américium.
23. Ruby -
JQWzqY#%@~`_:jLK$XgMB!
interdit24. Lua -
JQWzqY#%@~`_:jLK$XgMB!?
interdit25. R -
JQWzqY#%@~`_:jLK$XgMB!?*
interdit26. Régime -
JQWzqY#%@~`_:jLK$XgMB!?*U
interdit27. TI Basic -
JQWzqY#%@~`_:jLK$XgMB!?*U)
interdit28. REXX -
JQWzqY#%@~`_:jLK$XgMB!?*U)(
interdit29. BASIC (Yabasic) -
JQWzqY#%@~`_:jLK$XgMB!?*U)(Z
interdit30. Pyth -
JQWzqY#%@~`_:jLK$XgMB!?*U)(ZI
interdit31. CJam -
JQWzqY#%@~`_:jLK$XgMB!?*U)(ZI|
interdit32. GolfScript -
JQWzqY#%@~`_:jLK$XgMB!?*U)(ZI|\
interdit33. Brainfuck -
JQWzqY#%@~`_:jLK$XgMB!?*U)(ZI|\/
interditPrend une chaîne vide en entrée.
34. Haskell -
JQWzqY#%@~`_:jLK$XgMB!?*U)(ZI|\/,
interdit35. Deadfish -
JQWzqY#%@~`_:jLK$XgMB!?*U)(ZI|\/,[
interditL'un des rares de ces extraits à générer une nouvelle ligne par la suite.
36. Rebmu -
JQWzqY#%@~`_:jLK$XgMB!?*U)(ZI|\/,[]
interdit37. Tcl -
JQWzqY#%@~`_:jLK$XgMB!?*U)(ZI|\/,[]P
interdit38. Il était une fois un poisson nommé Fred -
JQWzqY#%@~`_:jLK$XgMB!?*U)(ZI|\/,[]P"
interditImprime le sélénium.
39. BrainFNORD -
JQWzqY#%@~`_:jLK$XgMB!?*U)(ZI|\/,[]P"F
interditImprime l'azote.
40. Texte -
JQWzqY#%@~`_:jLK$XgMB!?*U)(ZI|\/,[]P"Fl
interdit41. J -
JQWzqY#%@~`_:jLK$XgMB!?*U)(ZI|\/,[]P"Fln
interdit42. Pi -
JQWzqY#%@~`_:jLK$XgMB!?*U)(ZI|\/,[]P"Fln'
interditImprime le tantale.
43. Marbelous -
JQWzqY#%@~`_:jLK$XgMB!?*U)(ZI|\/,[]P"Fln'.
interditImprime le chlore. Cela repose sur l'utilisation d'espaces pour les cellules vides. Interprète Marbelous
44. DNA # -
JQWzqY#%@~`_:jLK$XgMB!?*U)(ZI|\/,[]P"Fln'.}
interditImprime Thallium.
45. oOo -
JQWzqY#%@~`_:jLK$XgMB!?*U)(ZI|\/,[]P"Fln'.}G
interditImprime le brome.
46. ABC -
JQWzqY#%@~`_:jLK$XgMB!?*U)(ZI|\/,[]P"Fln'.}GO
interditImprime l'étain. Notez que les interprètes sur esolang ne sont pas tous disponibles. Cependant, l'implémentation de 4chan écrite dans Scheme fonctionne (# 59).
47. WASD -
JQWzqY#%@~`_:jLK$XgMB!?*U)(ZI|\/,[]P"Fln'.}GOC
interditImprime l'yttrium.
48. Super Stack! -
JQWzqY#%@~`_:jLK$XgMB!?*U)(ZI|\/,[]P"Fln'.}GOCw
interditImprime l'arsenic.
49. Golunar -
JQWzqY#%@~`_:jLK$XgMB!?*U)(ZI|\/,[]P"Fln'.}GOCws
interditImprime le lithium.
50. Unaire -
JQWzqY#%@~`_:jLK$XgMB!?*U)(ZI|\/,[]P"Fln'.}GOCws1
interditLa source est
0
répétéefois.
Imprime le potassium.
51. Lenguage -
JQWzqY#%@~`_:jLK$XgMB!?*U)(ZI|\/,[]P"Fln'.}GOCws10
interditLa source est
>
répétéefois.
Imprime Bohrium.
La plupart des langages étranges utilisés se trouvent sur le wiki esolangs .
Veuillez noter que tous les extraits de brainfuck (et dérivés de brainfuck) ont été écrits avec des cellules 8 bits à l'esprit.
la source
2
était assez étrange pour le langage Pi, donc je l'ai exécuté sur mon interprète ( migl.io/projects/pi ), en fait, il revientª·ÄÊcnw
.2
se répète beaucoup car pour tout chiffre de pi supérieur ou égal à3
, il représente+
. Le code Pi utilisé dans ma réponse nécessite des cellules 8 bits (il commence par décrémenter 0) et produit la sortie correcte sur l'interpréteur dans la page esolang pour Pi .2024 languesVoici quelque chose pour lancer le bal. J'ai décidé de faire les éléments dans l'ordre parce que je ne connais pas suffisamment de langues pour que l'ordre ait beaucoup d'importance.
1. C # - aucun interdit
2. PHP -
W
interdit3. QBasic -
W$
interdit4. Script batch Windows -
W$?
interdit5. Brainf *** -
W$?&
interditSorties de bore.
6. C ++ -
W$?&+
interdit7. Befunge -
W$?&+<
interditProduit de l'azote.
8. Bash -
W$?&+<@
interdit9. Sisi -
W$?&+<@>
interdit10. C -
W$?&+<@>9
interdit11. Common Lisp -
W$?&+<@>9,
interdit12. Zephyr -
W$?&+<@>9,#
interdit13. Prolog -
W$?&+<@>9,#\
interdit( Testez ici .)
14. Java -
W$?&+<@>9,#\:
interdit15. Golfscript -
W$?&+<@>9,#\:.
interdit16. Pyth -
W$?&+<@>9,#\:.]
interdit17. ActionScript -
W$?&+<@>9,#\:.]|
interdit18. PowerShell -
W$?&+<@>9,#\:.]|;
interditHeureusement, les commandes PowerShell peuvent être écrites en minuscules, évitant l'interdit
W
.19. JavaScript -
W$?&+<@>9,#\:.]|;-
interdit20. Python 3 -
W$?&+<@>9,#\:.]|;-"
interdit21. Python 2 -
W$?&+<@>9,#\:.]|;-"(
interdit22. Perl -
W$?&+<@>9,#\:.]|;-"('
interdit23. Ruby -
W$?&+<@>9,#\:.]|;-"('{
interdit24. CJam -
W$?&+<@>9,#\:.]|;-"('{!
interditSorties Chrome.
)
des incréments ont été utilisés pour éviter le 9 interdit en 109 (m
).la source
sed: -e expression #1, char 0: no previous regular expression
- peut-être essayers/./Beryllium/
ous/^/Beryllium/
?echo -n | sed -e 's/^/Beryllium/'
.) Je peux le remplacer par autre chose.23 langues
Je me suis mis à battre la réponse en 20 langues ... et maintenant je ne peux pas être dérangé de tirer pour 52.;)
1. Mathematica - aucun interdit
2. Ruby -
J
interdit3. Python 2 -
JK
interdit4. Python 3 -
JKQ
interdit5. PHP -
JKQX
interdit6. Julia -
JKQXV
interdit7. JavaScript -
JKQXVO
interdit8. CoffeeScript -
JKQXVOY
interdit9. C -
JKQXVOYq
interdit10. C ++ -
JKQXVOYqZ
interdit11. Matlab -
JKQXVOYqZx
interdit12. Perl -
JKQXVOYqZxw
interdit13. Perl 6 -
JKQXVOYqZxwk
interdit14. Java -
JKQXVOYqZxwkf
interdit15. Marbelous -
JKQXVOYqZxwkfv
interditImpressions
Dysprosium
.16. Lua -
JKQXVOYqZxwkfvD
interdit17. Octave -
JKQXVOYqZxwkfvDG
interdit18. Rouille -
JKQXVOYqZxwkfvDGF
interdite19. Fortran -
JKQXVOYqZxwkfvDGFE
interdit20. CJam -
JKQXVOYqZxwkfvDGFEp
interdit21. Golfscript -
JKQXVOYqZxwkfvDGFEpH
interdit22. Pyth -
JKQXVOYqZxwkfvDGFEpHU
interditJe pense que cela devrait être
23. Brainfuck -
JKQXVOYqZxwkfvDGFEpHUI
interditImpressions
Beryllium
.la source
202126 languesD'accord, voyons si je peux faire quelque chose, sans même essayer de viser la première place ... si je peux obtenir 20 langues sans aucune erreur, je serai plus qu'heureux.
1. JAVA - aucun interdit
Impressions
Hydrogen
.2. Pascal -
J
interditImpressions
Helium
.3. C -
JP
interditImpressions
Lithium
.4. PHP -
JPf
interditImpressions
Beryllium
.5. C # -
JPf?
interditImpressions
Boron
.6. PROLOG -
JPf?W
interditImpressions
Carbon
- testées ici .7. JavaScript -
JPf?W'
interditImpressions
Nitrogen
.8. LOLCODE -
JPf?W'=
interditImpressions
Oxygen
.9. Befunge '93 -
JPf?W'=K
interditImpressions
Fluorine
- testées ici .10. Visual Basic -
JPf?W'=K@
interditImpressions
Neon
.11. HTML5 -
JPf?W'=K@M
interditImpressions
Sodium
- inspirées de cette réponse .12. Brainfuck -
JPf?W'=K@M&
interditImpressions
Magnesium
- testées ici .13. JSFuck -
JPf?W'=K@&M<
interditImpressions
Aluminium
- testées ici .14. Bash -
JPf?W'=K@&M<[
interditImpressions
Silicon
.15. Assemblée NASM -
JPf?W'=K@&M<[!
interditImpressions
Phosphorus
- testées ici .16. D -
JPf?W'=K@&M<[!$
interditImpressions
Chlorine
.17. Fortran '95 -
JPf?W'=K@&M<[!$d
interditImpressions
Argon
- testées ici .18. Lua -
JPf?W'=K@&M<[!$d*
interditImpressions
Sulfur
- testées ici .19. Golfscript -
JPf?W'=K@&M<[!$dt
interditImpressions
Potassium
- testées ici .20. Perl 5 -
JPf?W'=K@&M<[!$*dU
interditImpressions
Calcium
- testées ici .21. Nimrod -
JPf?W'=K@&M<[!$*dUu
interditImpressions
Scandium
.22. Python -
JPf?W'=K@&M<[!$*dUuh
interditImpressions
Titanium
.23. Unlambda -
JPf?W'=K@&M<[!$*dUuh;
interditImpressions
Iron
. - testé ici .24. Quatrième -
JPf?W'=K@&M<[!$*dUuh;`
interditImpressions
Cobalt
- testées ici .25. Lua -
JPf?W'=K@&M<[!$*dUuh;`\
interditImpressions
Nickel
- testéesici26. Émoticône -
JPf?W'=K@&M<[!$*dUuh;`\p
interditImpressions
Zinc
- testées iciEh bien, je pense que c'est à peu près suffisant pour moi.
la source
s/Nytrogen/Nitrogen/g
; sinon, beau travail (et accessoires pour utiliser Pascal, Fortran et Assembly).