Aller au contenu

Messages recommandés

Posté(e)

Bonjour à tous et toutes , je souhaiterai traduite dans mon programme ceci :(trame)

 

 

(setq interrupteur 0

 

Poser la question : Est-ce que l'implantation des candélabres vous convient?

 

Si non

Que souhaitez vous modifier?

 

cas1 Alignement

cas2 Décalage

cas3 PremierCandelabre

cas4 Entraxe

cas5 Ecart

 

 

Si c'est le cas "1" on désactive l'intérupteur pour tous les cas sauf le cas "1"

Si c'est le cas "2" on désactive l'intérupteur pour tous les cas sauf le cas "2"

Si c'est le cas "3" on désactive l'intérupteur pour tous les cas sauf le cas "3"

Si c'est le cas "4" on désactive l'intérupteur pour tous les cas sauf le cas "4"

Si c'est le cas "5" on désactive l'intérupteur pour tous les cas sauf le cas "5"

 

 

 

 

 

Si oui

setq ( = interrupteur 1)

 

 

 

 

Tous mes cas sont des fonctions crées , je voudrais tous les lancer au démarrage de mon programme de façon à ce que le programme se déroule une première fois( d'où l'interrupteur à 0) Ensuite je souhaiterai poser ces questions (ci-dessous) et si jamais l'utilisateur indique qu'il souhaiterai modifier un des cas on reviendrai au cas voulu si l'utilisateur est satisfait alors interrupteur à 1 et on continue le programme.

 

Ps: Tous les cas seraient dans une boucle "while"

 

 

Voilà ce que j'ai pensé à faire, mais pour l'instant rien ne marche bien sur :/ :

 

 

(defun c:MAIN ();Début de la fonction principale

(setq interupteur 0)
(setq =  cas1 0
  cas1 0
  cas2 0
  cas3 0
  cas4 0
  cas5 0
 
)
 

(while(= interupteur 0)
  

 	if( = cas1 0)
  		( 
			  (setq alignementEnCours(c:ALIGN));récupération de la fonction "ALIGN" et mise en variable
			  
		)
  	if( = cas2 0)
	  	(	  
			  (c:DECAL_RESEAU alignementEnCours); récupération de la fonction DECAL_RESEAU avec comme argument "alignementEnCours"
		)

  	if( = cas3 0)
  		(
			  (setq premierCandelabre (getpoint"\n cliquez sur le premier candélabre "))	  
			  (setq projectionCandelabre (c:PROJECTION premierCandelabre))

		)
  
  	if( = cas4 0)
  		(
			  (setq entraxeCandelabre (getdist"\n Indiquez l'entraxe des candélabres "))
		)
  
  	if( = cas5 0)
  		(
			  (setq decalageCandelabre(getdist"\n Indiquez le décalage des candélabres")); mettre la valeur de la droite par défaut
		)

  
  	
  	


);fin de la fonction principal 



(setq question (strcase(getstring "\n L'implantation vous est t-elle satisfaisante ?  [Oui / Non] <Non> ")))


  (cond
      ((or(= choix "NON") (= choix "N") (= choix ""))

       
	      (progn
	       	(setq question2 (strcase(getstring "\n Que souhaitez vous modifier? [Alignement / Décalage / PremierCandélabre / Entraxe / Ecart] <Alignement> ")))
	      )
      )

      ((or(= choix "OUI") (= choix "O"))

(setq interrupteur 1)
	       
	       )

      )

  

   )





 

 

 

Voilà je souhaiterai avoir des explications si possible en deux temps. Les premières sur la boucle "while" qui ne fonctionne pas , et les autres sur mes questions ( la première question m'est posée et met en variable la réponse "oui" ou "non" mais ne poursuit pas avec les conditions...

 

 

Merci beaucoup :) et bon week end

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é