Go to file
2021-03-07 20:49:13 +01:00
jour01 renommage dossier 2021-03-06 16:38:17 +01:00
jour02 Ajout 2e partie (marche pas) 2021-03-06 19:02:54 +01:00
jour04 Ajout des 2 parties 2021-03-06 19:26:42 +01:00
jour05 Débug & Ajout de commentaires 2021-03-07 15:07:19 +01:00
README.md Ajout infos pour les 4 premiers jours 2021-03-07 20:49:13 +01:00

AoC 2015

Jai décidé de faire lédition de 2015 de lAdvent of Code en utilisant un langage différent pour chaque jour. Jessaie dutiliser au mieux le langage (par exemple, Java est orienté objet). Vous trouverez ci-dessous un tableau résumant rapidement ce dont vous avez besoin pour lancer chaque jour et plus bas encore des notes plus précises pour les différents jours.

TLDR

Ce tableau contient les langages pour chaque jours ainsi que le compilateur, la commande pour compiler et exécuter les différents fichiers. Si vous souhaitez plus dinformations, descendez à la bonne section.

Jour Langage Compilateur Commande pour compil Exécution
1 C gcc gcc jour1.c ./a.out
2 Java jdk 11 javac *.java java Main
3
4 Python python3 run.py
5 Cobol gnucobol cobc -x jour5.cob ./jour5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24

Jour 1

Le langage utilisé pour ce jour là est le C. Simple et efficace, il vous suffit davoir le compilateur gcc dinstallé pour pouvoir le compiler.

gcc jour1.c
./a.out

Jour 2

Ici, le langage est le Java et lapproche du problème sest fait avec des classes. La compilation varie selon votre CLASSPATH mais voici les commandes à entrer afin de faire marcher à coup sûr la compilation.

export CLASSPATH=$CLASSPATH:../class
mkdir ws class
cd ws
javac -d ../class ../*.java
java Main

Jour 3

Jour 4

Le langage le plus simple ! Juste un fichier dune vingtaine de ligne : merci au Python ! Jai décidé de faire une approche bruteforce au lieu de chercher un moyen de « casser » le MD5. Pardonnez ma fainéantise.

python3 run.py

Jour 5

On retourne dans le passé ici avec le Cobol. Jai utilisé le compilateur GNUCOBOL pour pouvoir compiler mon fichier. Jai préféré utiliser lancienne syntaxe pour changer un peu ma façon de coder (et je trouve le symbole de la ligne 7 génial).

# pour installer le compilateur
sudo xbps-install gnucobol gmp-devel # sur Void

# pour compiler et exécuter
cobc -x jour5.cob
./jour5

Il reste des messages de débugging. Si vous souhaitez les voir, il suffit de rajouter loption -fdebugging-line au compilateur.

Jai appris à coder en COBOL très rapidement pour ce jour. Je me suis appuyé sur le cours de Wikiversite pour les bases et aussi de la documentation officielle GNUCOBOL.

Jour 6

Jour 7

Jour 8

Jour 9

Jour 10

Jour 11

Jour 12

Jour 13

Jour 14

Jour 15

Jour 16

Jour 17

Jour 18

Jour 19

Jour 20

Jour 21

Jour 22

Jour 23

Jour 24

Liste des langages utilisés

  • Shell
  • Perl
  • LOLCODE / HolyC
  • C++
  • C#
  • Pascal
  • Freepascal
  • Go
  • Rust
  • Groovy
  • Haskell
  • JS
  • PHP
  • Pony
  • Ruby
  • Lua
  • Pawn
  • PureBasic
  • Squirrel
  • Scala