Le décompte est un système de comptage simple qui fonctionne en base 5. Il existe différents systèmes de décompte utilisés dans le monde, mais celui qui est utilisé dans la plupart des pays anglophones est peut-être le plus simple - compter les unités en marquant des lignes verticales, puis pour chaque 5ème marque met une ligne horizontale à travers la collection précédente de quatre. Cela regroupe les marques de pointage par groupes de 5 (et les rend plus faciles à compter rapidement).
Vous allez écrire un programme qui affiche les marques de pointage jusqu'à une valeur donnée. Mais compter sur seulement la base 5 est ennuyeux! Par conséquent, votre programme devrait également pouvoir afficher des décomptes dans différentes bases.
Contribution
L'entrée sera soit une ou deux valeurs entières non négatives séparées par une virgule (par exemple 9
ou 8,4
). Le premier nombre est la valeur qui devrait être affichée par le décompte. La deuxième valeur est la base du décompte. Si la deuxième valeur n'est pas donnée, utilisez la base 5 .
Production
La sortie sera la valeur entrée représentée sous forme de marques de pointage ASCII. Voici quelques exemples par rapport auxquels vous pouvez tester votre programme - votre sortie doit correspondre exactement à ceux-ci!
Entrée: 12
ou12,5
| | | | | | | | | |
-+-+-+-+- -+-+-+-+- | |
| | | | | | | | | |
Contribution: 7,3
| | | | |
-+-+- -+-+- |
| | | | |
Contribution: 4,2
| |
-+- -+-
| |
Entrée: 6,1
ou 6,10
(remarquez les espaces de tête)
| | | | | |
| | | | | |
| | | | | |
Notez également que la base 1 est censée être incohérente - seules les lignes verticales doivent être utilisées.
Si l'une des valeurs entrées est 0, il ne devrait y avoir aucune sortie (et votre programme devrait se terminer normalement).
Règles
- Il s'agit de code-golf , donc la mise en œuvre correcte la plus courte (en octets) gagne.
- L'entrée / sortie peut se faire sur tout support approprié (par exemple stdin / stdout, fichier ...).
- L'entrée peut prendre la forme de plusieurs arguments de ligne de commande ou être séparée par des espaces, etc. si elle convient mieux à votre langue cible.
- Les retours à la ligne de fin sont autorisés dans la sortie. Les espaces de fin ne le sont pas. Cette règle ne s'applique que lorsqu'il y a une sortie (c'est-à-dire pas lorsque la valeur entrée est 0).
- Votre code doit être par défaut à la base 5 lorsqu'aucune base n'est entrée.
-+-
représenterait deux, car il y a une ligne verticale et un score horizontal à travers. La base 1 n'aurait que des lignes verticales. @AndoDaan modifié.
--- --- --- --- --- ---
. Par souci de cohérence avec les autres bases, vous devez placer une frappe horizontale à travers b-1
les lignes verticales. S'il est censé être incohérent, vous devez l'indiquer explicitement.
6,1
ressembler davantage à cela-+- -+- -+- -+- -+- -+-
?