Курсовая работа: Игра в "Морской бой" с компьютером
(if (< (+ j 1) 10)
(if (and (/= (+ j 1) jp) (eql (nth (+ j 1) (nth i lst)) 1))
(set_missing lst i (+ j 1) i j)
)
)
(if (eql (nth j (nth i lst)) 1) (setf (nth j (nth i lst)) '* ))
)
; функция, реализующая удар по полю
(defun blow (lst)
; выбираем случайную клетку
(setq i (random 10))
(setq j (random 10))
(setq n (nth j (nth i lst)))
(cond
((eql n 1)
(progn
; значение в клетке = 1
; убиваем корабль
(set_missing lst i j i j)
(set_missing_comp lst i j i j)
(setq user_ship (– user_ship 1))
(if (/= user_ship 0) (blow lst))
)
)
((eql n 0)
(progn
; значение в клетке 0
; промахнулись
(setf (nth j (nth i lst)) '~)