Aller au contenu

LotoCAD pour les petits joueurs


Messages recommandés

Posté(e)

Comme beaucoup s’intéressent au LISP

Un petit programme, déjà publié :

Qui permet de voir les boucles et les tests conditionnels

Mais aussi les "list" dans AutoCAD

Et ce soir il y a un tirage !

Bonne Chance !

 

;un programme a tester

;merci a Patrick pour sa participation

; RECHERCHE D'UN NOMBRE ALEATOIRE ENTRE 0 ET 100

 

(defun tirage (/ modulus multiplier increment random)

(if (not seed)

(setq seed (getvar "DATE"))

)

(setq nombre (setq modulus 65536

multiplier 25173

increment 13849

seed (rem (+ (* multiplier seed) increment) modulus)

random (/ seed modulus)

)

)

(setq numero_sorti (fix (* 100 nombre)))

)

 

; PROGRAMME UNE LISTE DE 5 NOMBRES PARMI 50 NOMBRES

 

 

(defun c:jeu ()

 

; CONSTANTES ET VARIABLES

 

(setq nombre_de_numero 5)

(setq total_de_numero 50)

 

(setq numero_sorti 0)

(setq rien "resultat")

 

(setq compteur1 0)

(setq compteur2 0)

(setq numero_01 0)

(setq numero "pas bon")

(setq list1 (list))

(setq list2 (list))

 

; TRAITEMENTS

 

(While (< compteur1 nombre_de_numero)

 

 

(tirage)

(setq numero "ok")

 

(if (= 0 numero_sorti) (setq numero "pas_bon")

)

(if (< total_de_numero numero_sorti) (setq numero "pas_bon")

)

 

; VERIFICATION NUMERO DEJA SORTI

 

(setq compteur2 (length list1))

 

(while (< compteur2 nbr_numero)

(if (= numero_sorti (nth compteur2 list1))

(setq numero "deja_sorti")

)

(setq compteur2 (+ 1 compteur2))

)

 

; AJOUt DANS LA LISTE

 

(if (= numero "ok")

(progn

(setq numero_01 numero_sorti)

(setq compteur1 (+ 1 compteur1))

 

(if (>= 5 compteur1) (setq list2(cons numero_01 list1))

)

(setq list1 list2)

 

)

(print list1)

)

 

)

; FIN

)

Posté(e)

Cool, ca a l'air très bien..

Si DATE est borné, on doit bien avoir un aléatoire parfait !?

 

Promis, j'essaie bientôt.

 

A priori je comprends:

(setq nombre (setq modulus 65536

multiplier 25173

 

Mais pas:

increment 13849 ))

 

(+ A nil)

Bureau d'études dessin.

Spécialiste Escaliers

Développement - Formation

 

./__\.
(.°=°.)
Posté(e)

Je ne suis pas joueur, mais j'aime bien m'amuser.

Dans ce cas ce programme ne ser a rien (peut etre un exercice pour un cour LISP)

Important : Je l'ai commencé ! et fini !

 

Comme je change de sujet tout le temps :

(info : son fonctionnement n'est pas le meme sur LT2002 et LT2004)

 

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer. Politique de confidentialité