我有一个像下面的代码。它返回列表,(((1 . 2) (1 . 0)) ((1 . 2) (1 . 1)) ((1 . 2) (1 . 3)) ((1 . 2) (1 . 4)) ((1 . 2) (1 . 5)) ((1 . 2) (1 . 6)) ((1 . 2) (1 . 7)) ((1 . 2) (0 . 2)) ((1 . 2) (2 . 2)))
LISP。创建对的列表
我不知道如果我能在路上改写generHod功能,使其返回列表像((1.2 1.0) (3.4 4.2) (1.3 1.3)...)
(setf hod '())
(defun generHod (CurrX CurrY)
(dotimes (y 8)
(if (/= y CurrY)
(setf hod (append hod (list (append (list (cons CurrX CurrY))(list (cons CurrX y))))))
)
)
(dotimes (x 8)
(if (/= x CurrX)
(setf hod (append hod (list (append (list (cons CurrX CurrY))(list (cons x CurrY))))))
)
)
)
所有这些附加业务:不良作风。 –
你提供什么解决方案?不幸的是,我并没有意识到不同的lisp函数可以使它更容易。 –
我可以为您提供一个很好的免费下载介绍性的Lisp书籍,其中介绍了基本知识:https://www.cs.cmu.edu/~dst/LispBook/index.html –