Bonjour, je dois réaliser un jeu de morpion 100x100 en Scheme
Je pense devoir faire une fonction qui me genere une liste de 10000 valeurs (0,1,2,3,4...)
Deux problemes se posent :
- Comment faire cette fonction??
-Comment "garder" en memoire les changement effectué a cette liste??
Merci d'avance.
PROJET :
(define (begin)
(display "\n")
(print " DEBUT DE LA PARTIE")
(display "\n"))
(define(end1)
(display "\n")
(print "FIN DE LA PARTIE")
(display "\n \n")
(print "LE GAGNANT EST : JOUEUR 1"))
(define(end2)
(display "\n")
(print "FIN DE LA PARTIE")
(display "\n \n")
(print "LE GAGNANT EST : JOUEUR 2"))
(define(end3)
(display "\n")
(print "FIN DE LA PARTIE")
(display "\n \n")
(print "AUCUN GAGNANT!!"))
; Fonction chapeau joueur 1.
(define(joueur1 n l )
(remplacer n 1 l'() 1))
; Fonction chapeau joueur 2.
(define(joueur2 n l )
(remplacer n 2 l'() 1))
(define(remplacer numcase nv l l1 acc)
(if(unpair l)
'()
(if(= acc numcase)
(append (reverse l1)(cons nv (cdr l)))
(remplacer numcase nv (cdr l) (cons (car l)l1)(+ acc 1)))))
(define(unpair l)
(if(pair? l)
#f
#t))
(define(unequal n l)
(if(equal? n l)
#f
#t))
(define (side)
3)
(define(colonne)
(print "Colonne ??")
(read))
(define(ligne)
(print "Ligne ??")
(read))
; x = colonne y = ligne.
(define(map x y)
(+ x (* y (side))))
(define(val n l)
(if(= n 0)
(car l)
(val (- n 1)(cdr l))))
(define(grilledebut)
'(1 2 3 4 5 6 7 8 9))
(begin)
(joueur1(val (map (colonne) (ligne)) (grilledebut)) (grilledebut))
(joueur2(val (map (colonne) (ligne)) (grilledebut)) (grilledebut))
Partager