Affiche pour la première fois depuis longtemps.
Écrivez un programme qui prend 3 entrées: X, Y et Z.
- X = sur (colonnes)
- Y = bas (lignes)
- Z = marqueur de position
Le programme doit ensuite imprimer une grille visuelle X en travers et Y en bas. Cette grille peut être composée de n'importe quel caractère sauf "+". Chaque «emplacement» reçoit un numéro d'index, en comptant à partir de 1 à la coordonnée 1, 1 à travers puis en descendant jusqu'à la fin.
X et Y seront toujours au moins 3, et Z ne sera jamais plus grand que X * Y
.
Z représentera l'emplacement qui est imprimé en "+", sur l'emplacement ainsi que 1 caractère à gauche, à droite, en haut et en bas. Par exemple:
+
+++
+
Enfin, si les caractères + interceptent les bords (le plus haut, le plus à gauche, le plus à droite et / ou le plus bas), alors le + devrait rebondir le long du même axe et déborder de l'autre côté.
Exemples: entrée = 5, 5, 13
-----
--+--
-+++-
--+--
-----
Entrée = 10, 10, 10
-------+++
---------+
---------+
----------
----------
----------
----------
----------
----------
----------
Entrée = 10, 10, 21
----------
+---------
+++-------
+---------
----------
----------
----------
----------
----------
----------
Edit: exemple non carré 16,3,32
---------------+
-------------+++
---------------+
Je pense que j'ai tout couvert. Il ne devrait y avoir aucune limite à l'entrée, mais si votre programme l'exige, limitez-le à 64 * 64.
Point bonus (est-ce que je peux faire ça?): L' entrée Z ne doit pas être> X * Y, mais si elle est plus grande que Y * Z, alors sortez le centre + au milieu de la grille.
EDIT: l' entrée Z ne peut pas être supérieure à X * Y
Modifier 2:. Apporté quelques changements à X et Y pour être plus clair, espérons
C'est le golf de code, le code le plus court gagne.