#Common Lisp, 90 86 85 81 79 bytes
Common Lisp, 90 86 85 81 79 bytes
(format t"~5@{~@?
~}~4@{~2:*~@?
~}"#1="~9@{-~}""|~8t|"#1#"| | |""~9@{x~}"1)
First we print out all arguments, and then we print them in reversed order (without xxxxxxxxx
).
Similiar solution, but instead of providing every variable directly I give (where it's efficient) control string which will output needed text.