Ajout commandes pour les numéros de lignes en COBOL

This commit is contained in:
rick 2021-03-17 22:07:47 +01:00
parent 7bbe14e792
commit 37b5adf4d6
Signed by: Rick
GPG key ID: 2B593F087240EE99

View file

@ -1,5 +1,6 @@
# AoC 2015 # 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. 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 ## TLDR
@ -75,14 +76,30 @@ On retourne dans le passé ici avec le **Cobol**. Jai utilisé le compilateur
sudo xbps-install gnucobol gmp-devel # sur Void sudo xbps-install gnucobol gmp-devel # sur Void
# pour compiler et exécuter # pour compiler et exécuter
cobc -x jour5-prem.cob cobc -x jour5.cob
./jour5-prem ./jour5
``` ```
Il reste des messages de débugging. Si vous souhaitez les voir, il suffit de rajouter loption `-fdebugging-line` au compilateur. Il reste des messages de débugging. Si vous souhaitez les voir, il suffit de rajouter loption `-fdebugging-line` au compilateur. **Les messages ont été supprimés.**
Jai appris à coder en COBOL très rapidement pour ce jour. Je me suis appuyé sur [le cours de Wikiversite](https://fr.wikiversity.org/wiki/COBOL) pour les bases et aussi de [la documentation officielle GNUCOBOL](https://devdocs.io/gnu_cobol/). Jai appris à coder en COBOL très rapidement pour ce jour. Je me suis appuyé sur [le cours de Wikiversite](https://fr.wikiversity.org/wiki/COBOL) pour les bases et aussi de [la documentation officielle GNUCOBOL](https://devdocs.io/gnu_cobol/).
En tant que développeur, je suis feignant. Voici un mini script bash pour générer les colonnes de lignes se trouvant dans le fichier :
```bash
nbLine=$(wc -l jour5.cob | cut -d\ -f1)
for i in $(seq -f "%06g" $nbLines);
do
sed -Ei '0,/^\s{1,6}/s//'$i'/' jour5.cob
done
```
Si vous souhaitez éditer le fichier, il est plus pratique de le faire sans ces nombres. Voici la commande permettant de les retirer :
```bash
sed -Ei 's/^[0-9]{6}/ /g' jour5.cob
```
## Jour 6 ## Jour 6
## Jour 7 ## Jour 7
## Jour 8 ## Jour 8
@ -113,7 +130,7 @@ Liste des langages utilisés
* Shell * Shell
* Perl * Perl
* LOLCODE / HolyC * HolyC
* C++ * C++
* C# * C#
* Pascal * Pascal
@ -121,13 +138,27 @@ Liste des langages utilisés
* Go * Go
* Rust * Rust
* Groovy * Groovy
* Haskell
* JS * JS
* PHP * PHP
* Pony * Pony
* Ruby * Ruby
* Lua * Lua
* Pawn * Pawn
* PureBasic
* Squirrel * Squirrel
* Scala * Scala
## Langages non utilisées
Liste des langages devant être utiliser mais qui ne lont pas été. Jessai dapporter des explications au pourquoi.
### LOLCODE
Le LOLCODE ne permet pas la manipulation de chaines de caractères ou de manière peu flexible : [post Stackoverflow](https://stackoverflow.com/questions/29762129/lolcode-string-parsing).
### Haskell
Le Haskell est un langage de logique, son foctionnement et surtout sa structure est différente des autres programmes.
### PureBasic
Compilateur propriétaire.