Je viens de finir l'épreuve dont nous avons parlé, en bash, hum, en awk, et il faut expliquer comment se passer de tableau.
Le jeu utilise un "read" pour donner les "entrées" au programme en bash (ce qui pose de nombreux problèmes pour lesquels j'ouvrirai peut-être une discussion, comme le fait que "read" supprime le premier espace entré ou qu'un texte avec des contre-obliques est saccagé)
Voici la base donnée en point de départ:
Il n'est pas question de tableau.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 read N for (( i=0; i<N; i++ )); do read Pi done
Pour ne pas avoir à traiter les variables une à une ou par tableau, il convient de renvoyer vers la sortie... de la boucle !!! Pas celle du programme. Et de retraiter.
Et voilà une épreuve réussie sans effort.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 read N for (( i=0; i<N; i++ )); do read Pi echo $Pi done |sort -n |awk 'blablabla'
Partager