Je suis en train d'avoir une liste comme ça ...Comment remplacer des éléments dans une liste imbriquée dans le schéma
'((0 1 2) (3 4 5) (6 7 8) (0 3 6) (1 4 7) (2 5 8) (0 4 8) (2 4 6))
et remplacer toutes les occurrences d'un certain nombre.
Par exemple lors de l'exécution
(replace 4 "x" '((0 1 2) (3 4 5) (6 7 8) (0 3 6) (1 4 7) (2 5 8) (0 4 8) (2 4 6)))
La sortie souhaitée est
'((0 1 2) (3 x 5) (6 7 8) (0 3 6) (1 x 7) (2 5 8) (0 x 8) (2 x 6)))
Ce que j'ai essayé est si loin
(define (replace var player list) (if (null? list) '() (if (list? (car list)) (replace var player (cdr list)) (if (equal? var (car list)) (cons player (replace var player (cdr list))) (cons (car list) (replace var player (cdr list))) ))))
qui quand je lance pour remplacer tous des 1 avec un x la sortie est '(0 "x" 2)