포맷 I 다음 목록이 있습니다 (X X O NIL NIL O NIL NIL O)
목록
내가 그것을 포맷하고 싶습니다 같이하기 : 아마 함께 내가 리스프과에 대해 알고 작은 것과 뭔가를 자갈 수
X | X | O
--+---+--
| | O
--+---+--
| | O
을 FORMAT
,하지만 아마 꽤 심하게 될 것입니다. 모든 포인터 크게 감사하겠습니다.
포맷 I 다음 목록이 있습니다 (X X O NIL NIL O NIL NIL O)
목록
내가 그것을 포맷하고 싶습니다 같이하기 : 아마 함께 내가 리스프과에 대해 알고 작은 것과 뭔가를 자갈 수
X | X | O
--+---+--
| | O
--+---+--
| | O
을 FORMAT
,하지만 아마 꽤 심하게 될 것입니다. 모든 포인터 크게 감사하겠습니다.
* (format t "~{~A | ~A | ~A~%~^--+---+--~%~}"
(mapcar (lambda (x) (or x " ")) '(X O X NIL X X O X NIL)))
X | O | X
--+---+--
| X | X
--+---+--
O | X |
NIL
* (format t "~{~A | ~A | ~A~%~^--+---+--~%~}"
(mapcar (lambda (x) (or x " ")) '(X O X NIL X X O X NIL)))
X | O | X
--+---+--
| X | X
--+---+--
O | X |
NIL
위의 형식 문자열에 대한 약간의 설명. 여기서 중요한 것은 '~ {' '~}'와 '~ ^'입니다. 일치하는 Tilde 중괄호 쌍이 입력 인수로 목록을 가져 와서 반복합니다. 반복되는 목록이 비어 있으면 ~ ^는이 루프에서 초기 이스케이프를 제어합니다. 관련 문서 ~{ 및 ~^.
그냥 해보세요. 효과가있는 버전을 가지고 있으면 총기 수리에 대해 걱정할 필요가 있습니다. –