Eu gosto de arte ascii e fico muito entediado, então encontrei alguns personagens ascii e comecei a fazer coisas aleatórias, castelo mario de 8 bits, labirintos e arcos. Descobri que os arcos podiam ser facilmente empilhados de maneira organizada.
╔═══════╗
║╔═════╗║
║║╔═══╗║║
║║║╔═╗║║║
╨╨╨╨─╨╨╨╨
Desafio
Crie um programa, função ou qualquer outro formato padrão que aceite um número inteiro maior ou igual a 0 (a menos que você esteja fazendo o bônus) e produza arte ascii com a quantidade de arcos especificada.
Casos de teste
Entrada:
7
Resultado:
╔═════════════╗
║╔═══════════╗║
║║╔═════════╗║║
║║║╔═══════╗║║║
║║║║╔═════╗║║║║
║║║║║╔═══╗║║║║║
║║║║║║╔═╗║║║║║║
╨╨╨╨╨╨╨─╨╨╨╨╨╨╨
Alt:
+-------------+
|+-----------+|
||+---------+||
|||+-------+|||
||||+-----+||||
|||||+---+|||||
||||||+-+||||||
||||||| |||||||
---------------
Entrada:
1
Resultado:
╔═╗
╨─╨
Alt:
+-+
| |
---
- Se o número inteiro for 0, não produza nada
- Esta pergunta estará no utf-8, cada caractere contará como um "byte"
- Este é um codegolf, então a resposta mais curta vence.
- Você tem a opção de usar em
+-+
vez de╔═╗
, em---
vez de╨─╨
e em|
vez de║
Bônus (não decidido se é permitido permitir isso na versão alternativa porque não seria tão difícil)
-10% se o programa suportar números negativos e virar os arcos da seguinte maneira
╥╥╥╥─╥╥╥╥
║║║╚═╝║║║
║║╚═══╝║║
║╚═════╝║
╚═══════╝
+---+
na parte superior, nas laterais |
e na parte inferior da -----
qual me parece bem. Juanpotato, se você quiser usar caracteres não-ascii, indique a codificação na pergunta. No momento, estou votando para fechar como pouco claro.