Précédent   Forum du club des développeurs et IT Pro > Autres langages > Langages fonctionnels > Scheme
Scheme Forum d'entraide sur la programmation en langage fonctionnel Scheme
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 05/01/2013, 21h20   #1
qyybash
 
Homme
scheme
Inscription : janvier 2013
Messages : 1
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Seine Saint Denis (Île de France)

Informations professionnelles :
Activité : scheme
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : janvier 2013
Messages : 1
Points : -1
Points : -1
Par défaut Aide pour un projet

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))
qyybash est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 07/01/2013, 19h17   #2
kbprince
Invité régulier
 
Homme Rachid Ihadadene
Étudiant
Inscription : décembre 2012
Messages : 33
Détails du profil
Informations personnelles :
Nom : Homme Rachid Ihadadene
Localisation : France, Seine Saint Denis (Île de France)

Informations professionnelles :
Activité : Étudiant
Secteur : High Tech - Matériel informatique

Informations forums :
Inscription : décembre 2012
Messages : 33
Points : 7
Points : 7
Par défaut CODE

Bonjour

Comme le faisait remarquer votre interlocuteur jack_ft le fait que vous n'utilisiez pas la balise code rend vos messages illisibles.
Je les ai tous corrigés en ajoutant cette balise mais il serait correct vis à vis de vos interlocuteurs que vous en fassiez de même.
Elle est très facile d'accès : au dessus de l'editeur, il y a une ligne de symboles G, I ,S, à la fin de la ligne vous avez un #, cliquez dessus, il apparaitra à l'endroit du curseur [CODE][/CODE ] avec le curseur clignotant à l'intérieur. Inserez votre code à cet endroit et il sera bien afficher.

Merci de faire l'effort.
kbprince est déconnecté   Envoyer un message privé Réponse avec citation 10
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 02h54.


 
 
 
 
Partenaires

Hébergement Web