introduction
L'une des premières choses que j'ai apprises en chimie a été de donner la formule de combustion des alcanes. L'exemple le plus basique était: 2CH4 + 4O2 > 4H2O + 2CO2
. Notez que l'équation aurait pu être simplifiée en divisant chaque coefficient par 2, nous obtiendrions CH4 + 2O2 > 2H2O + CO2
. Pour faciliter les choses, nous allons ignorer cette étape .
Vous pouvez voir qu'avec la combustion de n'importe quel alcane, l'oxygène est utilisé. Après la réaction, seuls du CO2 et du H2O sont produits.
La tâche:
Donnez un programme complet qui prend en entrée STDIN ou l'équivalent le plus proche possible, et génère la réaction totale en utilisant STDOUT ou l'équivalent le plus proche possible.
L'entrée sera toujours sous la forme C(n)H(2n+2)
, avec n > 0
. Voici quelques exemples d'entrées:
CH4
C2H6
C3H8
C4H10
C5H12
C6H14
etc.
Un conseil utile:
Chaque alcane a un schéma standard dans la réaction de combustion:
2C(n)H(2n+2) + (3n+1)O2 > (2n+2)H2O + (2n)CO2
par exemple
C4H10
donne l'équation suivante: 2C(4)H(2*4+2) + (3*4+1)O2 > (2*4+2)H2O + (2*4)CO2
. Après avoir tout calculé, nous obtenons cette équation finale:2C4H10 + 13O2 > 10H2O + 8CO2
Exemples:
input: CH4
output: 2CH4 + 4O2 > 4H2O + 2CO2
input: C3H8
output: 2C3H8 + 10O2 > 8H2O + 6CO2
input: C4H10
output: 2C4H10 + 13O2 > 10H2O + 8CO2
input: C12H26
output: 2C12H26 + 37O2 > 26H2O + 24CO2
Règles:
- Vous devez fournir un programme complet.
- Votre programme doit prendre la contribution de STDIN, ou l'équivalent le plus proche si ce n'est pas possible.
- Votre programme doit sortir en utilisant STDOUT, ou l'équivalent le plus proche si ce n'est pas possible.
- Notez que j'ai utilisé des espaces pour les exemples pour augmenter la lisibilité, ceux-ci ne sont pas nécessaires .
2CH4 + 4O2 > 4H2O + 2CO2
et2CH4+4O2>4H2O+2CO2
sont deux sorties valides. Cependant, si vous utilisez régulièrement des espaces pour la sortie, vous obtenez un bonus de -10% - C'est du code-golf , donc le programme avec le moins d'octets gagne!