Dados dos entradas - una de ellas una cadena no vacía imprimible ASCII (incluyendo el espacio, excluyendo nueva línea), el otro es uno de dos valores distintos, consistentes de su elección ( 1 / 0, l / r, left / right, etc.) - salida de un avión arte ASCII banner de la cadena, apuntando hacia la izquierda o hacia la derecha. Por coherencia, usaré lefty a lo rightlargo de esta descripción del desafío.
El plano es |-DI>-/( left) o \-<ID-|( right). Como el banner es claro, consiste en los caracteres de la cadena de entrada separados por espacios, ya sea de izquierda a derecha ( left) o de derecha a izquierda ( right), y rodeados por un cuadro de la forma
/--/
---< <
\--\
o
\--\
> >---
/--/
Nota Debe haber un espacio entre el inicio / final del mensaje y los >, <caracteres.
Por ejemplo, aquí está el mensaje HAPPY BIRTHDAY!y la dirección left:
/-------------------------------/
|-DI>-/---< H A P P Y B I R T H D A Y ! <
\-------------------------------\
Aquí está el mensaje PPCGy la dirección right. Tenga en cuenta que las letras aparecen "al revés" cuando se ven desde este lado del banner:
\---------\
> G C P P >---\-<ID-|
/---------/
Reglas
- Las nuevas líneas iniciales o finales o espacios en blanco son opcionales, siempre que los caracteres se alineen correctamente.
- Un programa completo o una función son aceptables. Si es una función, puede devolver el resultado en lugar de imprimirlo.
- Si es posible, incluya un enlace a un entorno de prueba en línea para que otras personas puedan probar su código.
- Las lagunas estándar están prohibidas.
- Este es el código de golf, por lo que se aplican todas las reglas habituales de golf, y gana el código más corto (en bytes).
eval- Ingrese un programa que genere un plano orientado a la izquierda para la izquierda, y un programa que genere un plano orientado a la derecha para la derecha.