Étant donné le script Python 3 suivant:
def greet():
print("Hello, world!")
greet()
Ajoutez des lignes à ce fichier texte afin qu'il puisse être à la fois exécuté en tant que programme Python ainsi que compilé et exécuté en tant que programme C ++ produisant la même sortie. Bonjour tout le monde! (y compris la nouvelle ligne à la fin):
$ python3 bilingual.py.cpp
Hello, world!
$ g++ bilingual.py.cpp && ./a.out
Hello, world!
La solution sera notée par le nombre de caractères non blancs de l'ensemble du programme, y compris le script Python:
sed 's/\s//g' bilingual.py.cpp|wc -c
Réponses:
Score 116
Prepend:
La barre oblique inverse du préprocesseur
\
tire la:
ligne contenant le méchant dans une macro inutilisée. Essayez-le ici .Merci à la réponse d' edc65 pour la note sur l'int implicite en C ++ 4.
Merci à la réponse de PieCot pour suggérer
<cstdio>
plus<stdio.h>
.Merci à Leon d' avoir suggéré de supprimer le
X
dans l'original#define X\
.la source
Score 119
(Thx @Linus pour le nombre d'octets)
(1 octet enregistré thx @Conor O'Brien) (1 octet enregistré thx @PieCot)
En comptant à nouveau les octets à la main, j'en ai trouvé 113. Peut-être que c'est vrai cette fois.Non ce n'est pasRemarques: stdio et put sont toujours actifs et en cours d'exécution en C ++. Le type int manquant est valide en C ++ 4. Test
la source
0
de la ligne 2. Testez.Note
131 130134Les lignes à ajouter sont:
Et le code résultant:
Essai
la source
#import
n'est pas valide C ++:
Score
110104Améliorant la réponse de Linus :
Tester en C ++
Tester en Python
la source
Score 136
Uniquement pour les enregistrements:
Une autre façon (moins efficace) de gérer le côlon.
la source
cstdio
il faut le noter.tr -d '[:space:] ' < bilingual.py.cpp | wc -c
j'obtiens 128, tandis que celle-ci:tr -d '[:blank:] ' < bilingual.py.cpp | wc -c
fournit 136