Aperçu
Ce défi a été inspiré par ce post StackOverflow Meta . Dans ce document, @hakre dit:
J'ai vu un projet vraiment écrit par Stackoverflow (un noob copie ensemble de SO ici et SO là-bas), l'attribution ne se fait normalement jamais, ce qui entraîne la résiliation des droits sous CC. (sic)
Votre mission est de créer le programme le plus intéressant possible - sans jamais écrire une seule ligne de code. Vous ne pouvez utiliser que du code déjà écrit pour vous, à la fois dans les questions et les réponses de StackOverflow. Tout ce que vous pouvez faire est de scotcher le tout le mieux possible. Et bien sûr, il est très important que nous fournissions une attribution appropriée afin de ne pas mettre fin à nos droits.
Règles
- Vous devez inclure des liens vers les questions / réponses que vous avez utilisées dans votre réponse.
Vous ne pouvez pas modifier le code que vous trouvez, avec les exceptions suivantes:
une. Vous pouvez renommer des variables, des fonctions et des méthodes. (Cela ne signifie pas que vous pouvez changer une méthode invocation , en changeant, par exemple
scanner.nextInt()
àscanner.nextLine()
et prétendant que vous modifiez le nom de la méthode. Le changement doit être dans la définition ou référence à la même entité.)b. Vous pouvez ajuster l'indentation de manière appropriée.
c. Vous pouvez supposer que les modules appropriés sont chargés pour que les extraits de code fonctionnent. (par exemple, des
import
instructions pour Java et Python, desusing
instructions pour C # et C ++, et leurs équivalents dans tous les langages). Si l'extrait de code inclut leimport
s pour vous, vous pouvez les déplacer vers le haut du code.ré. Si le langage requiert que le code soit dans une sorte de corps de méthode pour s'exécuter (par exemple,
public static void main(String[] args)
pour Java,static int Main(string[] args)
pour C #, etc.), vous pouvez encapsuler votre code dans la méthode appropriée. Mais le contenu de cette méthode principale doit rester inchangé.Vous devez fournir une liste explicite de tout changement de nom de variable / méthode / fonction / classe effectué.
- Vous ne pouvez pas prendre d'extraits d'extraits (ce qui signifie que si vous prenez un bloc de code d'une publication, vous prenez le tout)
- Fournissez une brève description de ce que fait le code pour les personnes qui ne sont pas familières avec la langue que vous utilisez.
- Concours de popularité, donc le plus de votes gagne!
Exemple ennuyeux de cinq minutes (Python 3)
La description : lit un tas de fichiers journaux à partir du répertoire actuel et randomise les lignes qu'ils contiennent (excitant, non? Cela gagnerait totalement un concours de popularité)
La source
import glob
import random
for file in glob.glob('log-*-*.txt'):
# Etc.
with open(file) as f:
content = f.readlines()
# shuffle the list in place
random.shuffle(content)
# print it
print(content)
Modifications légales
- Renommé
fname
àfile
partir du lien 1 - Renommé
b
àcontent
partir du lien 2
Attributions