Rechercher dans la communauté
Affichage des résultats pour « challenge » dans sujets.
78 résultats trouvés
-
Donc, pour continuer dans la serie ;) J'ai une liste qui se compose de cette manière (setq lst '("a" "b" "c" "f" "a" "c" "f" "g" "t" "b" "c" "a")) J'aimerai connaitre le nombre de ""a, de "b", etc... sous la forme d'une liste et tant qu'à faire dans l'ordre alphabétique. @+
-
Bonjour , Voici le challenge auquel je suis confronté : --Je souhaite copier des repertoires contenat des dessins en dxf 2000 vers un repertoire avec ces dessins en dwg2004 avec au passage la creation de la miniatures .... --Pour la cretion de la miniatures , il suufit d'ouvrir chaque dessin dans autocad et de l'enregistrer à nouveau ( en ayant bien configurer autoacd )) Merci pour vos pistes , acr je ne sais pas trop si je pars sur du vba ou un cript ou un lisp... A bientot ..
-
Bonsoir, je me lance dans un challenge de débutant. Afin de sortir de l 'austérité du boulot, je souhaiterais fabriquer un jeu de bonneteau. (vous savez ce jeu de 3 cartes retournées où il faut retrouver la bonne). Ce thème pourrait faire l 'objet de choix d 'évolution. La première étape sera de faire dessiner 3 cartes . Elles seront rectangulaires en polyligne 2d de 10 de large sur 20 de haut, alignées horizontalement, séparées de 10 unités Le moins de lignes de code possible est souhaité, mais les commentaires sont les bienvenus, l 'objectif étant de faire connaître des possibilités d' utilisation. VBA bien sûr. [Edité le 21/10/2007 par nazemrap]
-
challenge debutant seulement avec l\'aide de nos maitres....
lovecraft a posté un sujet dans Débuter en LISP
Voilà, je relance le challenge débutant j'espère qu'il attira les plus novices.Comme je me situe dans la cours des débutants, je vais essayer de lancer un thème. 1- traitement d'un jeu de selection 2-creer une liste de ce jeu -
Suite à ce message, je propose un premier "challenge" en LISP réservé aux "débutants". Il faudrait donc que les lispeurs confirmés s'abstiennent dans un premier temps de répondre pour laisser les autres proposer leurs solutions, disons au moins jusqu'à Lundi soir ou Mardi matin dans la mesure où il y aurait déjà plusieurs réponses. Le but : - donner une routine qui retourne le centre de gravité d'un triangle défini par ses 3 sommets (p1, p2 et p3). - que le résultat soit juste (bien sûr) - essayer de faire le plus concis et élégant possible. Exemple : (defun cen-grav (p1 p2 p3) ...) tel que, avec : (setq pt1 '(10.0 5.0)) (setq pt2 '(4.0 15.0)) (setq pt3 '(-2.0 -5.0)) (cen-grav pt1 pt2 pt3) retourne (4.0 5.0) Le sujet a, il me semble déjà été traité, mais je le pense qu'il est intéressant pour ceux qui ne connaîtraient pas de solution à priori (encore une fois, les autres s'abstiennent de répondre). [Edité le 19/5/2007 par (gile)]
-
Bonjours à tous. Je voulais réaliser un lisp un petit peu "fun", mais qui pourrais être aussi utile. (une sorte de type de ligne, mais invariable) J'ai déjà commencé aujourd'hui et suis arrivé à un certain résultat. Le mieux est de l'essayer pour vous rendre compte de ce que je veux faire. (appliquez le sur un rectangle) J'en profite donc pour lancer un challenge (d'été), afin de l'améliorer et avoir un résultat correct pour toutes les LwPolylignes (arc). Au départ je voulais pouvoir l'appliquer à tout les objets curvilignes, mais ça complique pas mal les choses. Je pense que la partie (entmake) n'as pas besoin d'être reprise (sous réserve...) C'est plutôt la liste l_42, que je réserve pour la suite pour essayer de mettre le motif courbé. Celui-ci est pour l'instant traitée en segment droit. Le motif pourra être changé, on peut envisager un traitement de motif différent (losange, croix, insertion de segment non épais...) Mais déjà pour la mise au point, on peut garder ce motif. Donc pour ceux que l'idée interresse, les propositions sont attendues...et j'expliquerais les variables employées si vous ne comprenez pas à quoi elles servent. NB: Les points d'appuis originaux doivent êtres conservés. (defun c:lw2motif ( / ent obj_valx dxf_obj pt_first ep_lw d_inc pt_snd nb_vtx count l_pt lg_inc start_ep end_ep delta lg_vtx l_40 l_41 l_42) (vl-load-com) (while (not (setq ent (entsel "\nSelectionner un objet: ")))) (setq obj_vlax (vlax-ename->vla-object (car ent)) dxf_obj (entget (car ent))) (cond ((eq (cdr (assoc 0 dxf_obj)) "LWPOLYLINE") (setq pt_first (vlax-curve-getStartPoint obj_vlax)) (initget 71) (setq ep_lw (getdist pt_first "\nEpaisseur du symbole: ")) (initget 71) (setq d_inc (getdist pt_first "\nLongueur du symbole: ")) (setq pt_snd (vlax-curve-getPointAtParam obj_vlax 1) nb_vtx (fix (vlax-curve-getEndParam obj_vlax)) count 0 l_pt (list (cons 10 pt_first)) l_40 (list (cons 40 ep_lw)) l_41 (list (cons 41 0.0)) ; l_42 (list (cons 42 (vlax-invoke obj_vlax 'GetBulge count))) l_42 (list (cons 42 0.0)) lg_inc 0.0 start_ep ep_lw end_ep 0.0 delta 0.0 ) (repeat nb_vtx (setq lg_inc (vlax-curve-getDistAtParam obj_vlax count) lg_vtx (vlax-curve-getDistAtParam obj_vlax (1+ count)) ) (while (< (+ lg_inc d_inc) lg_vtx) (if (< (+ lg_inc d_inc) lg_vtx) (setq start_ep (if (zerop delta) ep_lw end_ep) end_ep 0.0 delta 0.0 ) (setq start_ep ep_lw delta (- lg_vtx lg_inc) end_ep (* (/ ep_lw d_inc) delta) ) ) (setq l_pt (cons (cons 10 (vlax-curve-getPointAtDist obj_vlax (setq lg_inc (+ lg_inc d_inc)))) l_pt) l_40 (cons (cons 40 start_ep) l_40) l_41 (cons (cons 41 end_ep) l_41) ; l_42 (cons (cons 42 (vlax-invoke obj_vlax 'GetBulge count)) l_42) l_42 (cons (cons 42 0.0 )l_42) ) ) (setq count (1+ count) pt_first (vlax-curve-getPointAtParam obj_vlax count) pt_snd (vlax-curve-getPointAtParam obj_vlax (1+ count)) l_pt (cons (cons 10 pt_first) l_pt) l_40 (cons (cons 40 start_ep) l_40) l_41 (cons (cons 41 end_ep) l_41) ; l_42 (cons (cons 42 (vlax-invoke obj_vlax 'GetBulge count)) l_42) l_42 (cons (cons 42 0.0 )l_42) ) ) (setq l_pt (reverse l_pt) l_40 (reverse l_40) l_41 (reverse l_41) l_42 (reverse l_42) ) (entmake (append (list (cons 0 "LWPOLYLINE") (cons 100 "AcDbEntity") (assoc 67 dxf_obj) (assoc 410 dxf_obj) (assoc 8 dxf_obj) (if (assoc 62 dxf_obj) (assoc 62 dxf_obj) (cons 62 256)) (if (assoc 6 dxf_obj) (assoc 6 dxf_obj) (cons 6 "BYLAYER")) (if (assoc 370 dxf_obj) (assoc 370 dxf_obj) (cons 370 -1)) (cons 100 "AcDbPolyline") (cons 90 (length l_pt)) (cons 70 (if (zerop (boole 1 (rem (cdr (assoc 70 dxf_obj)) 128) 1)) (boole 1 (cdr (assoc 70 dxf_obj)) 128) (1+ (boole 1 (cdr (assoc 70 dxf_obj)) 128)) ) ) (cons 38 (if (assoc 38 dxf_obj) (cdr (assoc 38 dxf_obj)) 0.0)) (cons 39 (if (assoc 39 dxf_obj) (cdr (assoc 39 dxf_obj)) 0.0)) ) (apply 'append (mapcar '(lambda (x10 x40 x41 x42) (append (list x10 x40 x41 x42)) ) l_pt l_40 l_41 l_42 ) ) (list (assoc 210 dxf_obj)) ) ) ) (T (princ "\nN'est pas une polyligne optimisée!") ) ) (princ) )
-
Je propose d'écrire trois différents programmes, mais ils sont semblables. C'est une tâche très intéressante - on peut la décider par la quantité immense de moyens. 1. (Union lst1 lst2) 2. (Intersection lst1 lst2) 3. (Subtraction lst1 lst2) L'exemple (setq lst1 '((1 . 5) (8 . 10) (20 . 20)) lst2 '((2 . 2) (4 . 6) (9 . 30)) ) ;_ setq (Union lst1 lst2) => '((1 . 6) (8 . 30)) (Intersection lst1 lst2) => '((2 . 2) (4 . 5) (9 . 10) (20 . 20)) (Subtraction lst1 lst2) => '((1 . 1) (3 . 3) (8 . 8))
-
Bonjour, on s'est déjà pris la tête avec des tris sur des listes. C'est un sujet similaire, car je souhaite obtenir le minimum d'une liste avec une fonction qu'on va appeler min-list. Quand on a : (setq L '(5 3 2 8 10 5 0 -3 8 -3)) on obtient : (min-list L) -3 Là, c'est facile, puisqu'il suffit de faire un tri et de prendre le premier de la liste. Là ou je voudrais corser la chose c'est en demandant la même chose sur une liste de listes, comme sur cet exemple : (setq L '(1 (2 4 6 0) (3 -1 (2 -5)) 4 5 6)) où (min-list L) doit donner -5 Amicalement Vincent [Edité le 27/8/2008 par zebulon_]
-
On suppose que la liste et les sous listes ne sont composées que de nombres. (defun min-list (lst) (apply 'min (mapcar (function (lambda (x) (if (listp x) (min-list x) x ) ) ) lst ) ) )
-
Bonsoir Cette fois ci, c'est un challenge je l'ai trouvé sur un autre site, mais je le trouve fort intéressant, instructif et utile Il s'agit d'effacer tous les textes/mtextes vides dans un dessin @+
-
Bonsoir, encore un challenge d'un niveau intermédiaire. Ceux qui connaissent déjà la réponse seraient gentil d'attendre demain soir pour donner leur réponse afin que les autres puissent chercher un peu Alors pour les autres, n'hésitez pas J'aimerai savoir si dans ma liste de chiffres, je n'ai que des nombres > à 5 et < à 10 '(6 6.5 7 8 8.5 9) --> T '(5 6 6.5 7 8 8.5 9) --> nil '(6 6.5 7 8 8.5 9 10) --> nil @+ ps : Ce n'est pas parce que j'ai lancé le sujet que je suis le seul à apporter aussi les réponses, c'est interactif ;)
-
Un nouveau challenge, que je dirais niveau intermédiaire, mais je trouve difficile de parler de "niveaux" tant les expériences de chacun sont diverses. Donc, merci à que ceux qui auraient une solution immédiate de laisser un peu chercher les autres ;) Il s'agit de faire une bascule sur un (ou des) code(s) binaire(s) d'une variable système. La réponse pourrait être la forme : (defun bascule (variable drapeau) ...) et fonctionner comme dans les exemples suivant. Exemple 1 : activer/désactiver le mode ortho (getvar "ORTHOMODE") -> 0 (bascule "ORTHOMODE" 1) (getvar "ORTHOMODE") -> 1 (bascule "ORTHOMODE" 1) (getvar "ORTHOMODE") -> 0 ... Exemple 2 : activer/désactiver différents modes d'accochage aux objet (ex : milieu,centre) (getvar "OSMODE") -> 7 (extrémité, milieu, centre) (bascule "OSMODE" 6) (getvar "OSMODE") -> 1 (extrémité) (bascule "OSMODE" 6) (getvar "OSMODE") -> 7 (extrémité, milieu, centre) ... ou (getvar "OSMODE") -> 3 (extrémité, milieu) (bascule "OSMODE" 6) (getvar "OSMODE") -> 5 (extrémité, centre) (bascule "OSMODE" 6) (getvar "OSMODE") -> 3 (extrémité, milieu) ... ou encore activer/désactiver tous les accrochages aux objets...
-
Bonsoir Encore un challenge mais qui change des listes Il s'agit de convertir un nombre en hexa et inversement ex : (hex 448) -> "1C0" ex : (dec "1C0") -> 448 ps : ne trichez pas en utilisant les fonctions vba ;) @+
-
Donc, toujours dans la serie. (demain, j'en donne un plus facile pour un niveau intermédiaire) J'ai une chaine de caractère que je souhaite incrémenter de +1 ex : "aaa" --> "aab" ex : "aaz" --> "aba" ex : "aef" --> "aeg" ex : "azz" --> "baa" ex : "zzz" --> "aaaa" Et pour ceux qui y arrivent, il serait interessant de pouvoir aussi incrémenter la chaine de caractère de +3 ou +10 par exemple ps : Merci à BonusCad de ne pas donner la réponse au premier challenge et perso, je n'ai pas reussi le suivant, sauf par une boucle, mais pas top :( @+
-
Un autre challenge, Inclure une liste dans une autre à une position donnée. Exemple : inclure '("d" "e" "f") dans '("a" "b" "c" "g" "h" "i") entre le"c" et le "g". (inc-lst '("d" "e" "f") '("a" "b" "c" "g" "h" "i") 3) ou (inc-lst '("d" "e" "f") '("a" "b" "c" "g" "h" "i") "c") doit retourner ("a" "b" "c" "d" "e" "f" "g" "h" "i") Désolé, le coup est parti tout seul... [Edité le 17/5/2007 par (gile)]
-
Voilà, puisque les challenges font progresser tout le monde, en voici un qui me trotte depuis un certain moment: nous avons des faces 3D qui modelisent un terrain (le terrain naturel) un second qui represente un modelage ou projet. je voudrais par exemple lorsque je clique a un endroit aléatoire avoir les informations suivantes: le Z du terrain naturel le Z du projet et le delta Z (Z terrain - Z projet). Voila je ne vous demande pas de repondre tout de suite mais donner quelques idées afin que la plupart des personnes qui veulent develloper puissent participer. Disons que la reponse definitive (si il y a) soit donnée dans une semaine. Merci d'avance de votre participation. @plus LB
-
Salut, Ça faisait longtemps, alors un sujet sur un forum étranger m'a donné une idée. Faire une routine pour remplacer toutes les occurrences d'un élément (atom) dans une liste et dans les sous listes qu'elle peut contenir quelque soit leur niveau d'imbrication. Pour être polyvalente, la routine pourra admettre 3 arguments comme la fonction subst : - le nouvel élément - l'élément à remplacer - la liste Exemple, remplacer tous les 1 par des 2 dans les listes suivantes : (toto 2 1 '((1 4) (1 3) (5 5) (1 1))) --> ((2 4) (2 3) (5 5) (2 2)) (toto 2 1 '(1 (4 (1 (3 1)) 1) 1 2 1)) --> (2 (4 (2 (3 2)) 2) 2 2 2)
-
Vous voulez quelque chose de prenant ;) Faire l'algorithme d'une recherche dichotomique Par exemple avec cette liste (setq lst '("a" "d" "g" "t" "r")), je recherche la position de "t" dans la liste Cette recherche procède de cette manière Le milieu de la liste est "g" soit (setq mil (fix (/ (length lst) 2))) "t" = "q" non, donc avant ou après "t" < "g" non, donc après "t" > "g" oui --> je prends le milieu de ma liste entre "g" et "r" qui me donne "t" soit (+ mil (fix (/ (- (length lst) mil) 2))) Le but est de faire une recherche rapide et intelligente plutôt que d'utiliser les boucles. Je n'ai pas l'algorithme, mais je pense qu'il va être plaisant à faire @+
-
Bonsoir, j 'ai voulu faire un autre jeu; à savoir atteindre une cible avec une flèche. Il y a une boite de réglage. ça marche à peu près. Toujours faire la tension de la corde (1) avant de varier l 'angle (2). Justement, j 'aimerais pouvoir tendre ou détendre après avoir changer l 'angle. Si il y a des amateurs.... le code à mettre dans Module1 Public arc As AcadArc Public fleche As AcadLine Public long_fleche As Double Public corde As AcadLWPolyline Public pt0(0 To 2) As Double Public pt1(0 To 2) As Double Public rayon As Double Public angdep As Double Public angdar As Double Public alpha As Double Public lcorde As Double Public ptpoly(0 To 5) As Double Public pttmp As Variant Public ptdepfleche(0 To 2) As Double Public ptdarfleche(0 To 2) As Double Public ptrepos(1) As Double Public pivot(0 To 2) As Double Public ligne_pivot As AcadLine Public cercle As AcadCircle Public ligne As AcadLine Public ptdar_ligne_pivot(0 To 2) As Double Public pos_alea(0 To 2) As Double Public cercle1 As AcadCircle Public Sub talarc() pt0(0) = 0: pt0(1) = 0: pt0(2) = 0 'pt1(0) = 20: pt1(1) = 0: pt1(2) = 0 rayon = 130 angdep = 337 * (3.141589 / 180) 'en radians angdar = 23 * (3.141589 / 180) 'en radians alpha = (2 * 3.141589) - (angdep - angdar) 'angle de l 'arc en radians long_fleche = 100 'trace l 'arc Set arc = ThisDrawing.ModelSpace.AddArc(pt0, rayon, angdep, angdar) 'longueur de la corde lcorde = (2 * rayon) * Sin(alpha / 2) 'trace la corde en LW polyligne pttmp = arc.StartPoint ptpoly(0) = pttmp(0): ptpoly(1) = pttmp(1) ptpoly(2) = pttmp(0): ptpoly(3) = pttmp(1) + lcorde / 2 pttmp = arc.EndPoint ptpoly(4) = pttmp(0): ptpoly(5) = pttmp(1) Set corde = ThisDrawing.ModelSpace.AddLightWeightPolyline(ptpoly) pivot(0) = ptpoly(2) + 10.3347: pivot(1) = ptpoly(3): pivot(2) = 0 'trace fleche 'son point de départ correspondant au sommet 1 de la poyligne corde ptdepfleche(0) = ptpoly(2): ptdepfleche(1) = ptpoly(3): ptdepfleche(2) = 0 'son point final tenant mpte de la longueur ptdarfleche(0) = ptpoly(2) + long_fleche: ptdarfleche(1) = ptpoly(3): ptdarfleche(2) = 0 Set fleche = ThisDrawing.ModelSpace.AddLine(ptdepfleche, ptdarfleche) 'trace ligne de pivot et le cercle qui vont servir à la balistique de la fleche 'Ces 2 éléments sont rendus invisibles ptdar_ligne_pivot(0) = pivot(0): ptdar_ligne_pivot(1) = pivot(1) - 1000: ptdar_ligne_pivot(2) = 0 Set ligne_pivot = ThisDrawing.ModelSpace.AddLine(pivot, ptdar_ligne_pivot) ligne_pivot.Visible = False Set cercle = ThisDrawing.ModelSpace.AddCircle(pivot, fleche.Length) cercle.Visible = False 'appel la création la cible aléatoire cible 'zoom étendu Application.ZoomExtents REGLAGE.Show End Sub Public Sub cible() 'trace cible 'position aléatoire Randomize pos_alea(0) = Int(800 - 500 + 1) * Rnd + 500 pos_alea(1) = 0 pos_alea(2) = 0 Set cercle1 = ThisDrawing.ModelSpace.AddCircle(pos_alea, 20) End Sub le formulaire à télécharger compressé: ici Macro à exécuter : talarc
-
Allez, il faut bien faire repartir ces challenges... :D Dites moi si c'est trop simple, ou si ça a déjà été tenté ! Personnellement c'est trop dur... on part d'une chaine de caractères avec chiffres et lettres, et la fonction retourne une liste avec chiffres et les lettres séparées... Ex : "qvf12qsdf125 5sf 56dfv2" -> ("qvf" 12 "qsdf" 125 " " 5 "sf " 56 "dfv" 2) Ex : "a1b2c3d4e5" -> ("a" 1 "b" 2 "c" 3 "d" 4 "e" 5) Ex : "12.52cm" -> (12.52 "cm") Voilà ! [Edité le 1/10/2007 par Matt666]
-
Et Bing encore un !! il s'agit de supprimer les points alignés et au milieu de 2 autres dans une liste de points... Ex : (remove-align '((18.0071 2.97385 0.000000) (18.0071 11.0191 0.000000) (21.4685 11.0191 0.000000) (24.8363 11.0191 0.000000) (24.8363 7.93200 0.000000) (24.8363 2.97385 0.000000) (18.0071 2.97385 0.000000))) -> ((18.0071 2.97385 0.000000) (18.0071 11.0191 0.000000) (24.8363 11.0191 0.000000) (24.8363 2.97385 0.000000) (18.0071 2.97385 0.000000)) je sais pas si c'est assez clair... Voilà ! bon courage ! Matt.
-
Salut, j ai fais une piece "amusante" en tolerie: 4 courbes formant une boucle une surface lissé (lissage frontiere) une tole cree par decalage a partir de la surface et la je suis assez content de moi malheureusement, impossible de la deplier donc pour les cracks, voila le challenge ! bon je peux vivre sans la deplier, c est mon fournisseur qui va s en dermerder mais c est qd meme un truc interessant je pense et j aimerai bien comparer le resultat de la deplié avec certaines données que j ai @ tantot !!
-
Celui là, c'est pour les champions et le résultat pourra être placé dans les routines LISP il s'agit de modéliser un terrain à partir de points topographiques XYZ un des algorythmes utilisables est l'algorythme de Delaunay expliqué brièvement sur l'image ci dessous http://xs215.xs.to/xs215/07221/Image5.jpg petit truc pour aider au début : le premier triangle peut être aisément remplacé par un rectangle qui englobe l'ensemble des point et qu'on partage immédiatement en 2 triangles selon une diagonale. Petit (gros) bonus pour les acharnés : c'est plus beau de gérer les triangles en mémoire dans une liste et de ne tracer l'ensemble des 3Dfaces qu'à la fin... ci dessous une liste de points 3D (261.341 151.864 118.208) (261.341 231.435 109.913) (261.341 209.625 108.910) (261.341 187.688 111.296) (261.341 165.778 113.907) (261.341 143.880 116.624) (244.612 132.933 108.374) (243.423 154.766 106.772) (241.139 176.734 106.750) (238.306 198.775 107.633) (235.467 220.854 109.054) (233.168 242.068 117.193) (231.955 262.027 127.368) (217.871 252.288 122.565) (220.615 231.858 112.188) (209.367 221.134 107.400) (214.361 198.875 104.777) (219.337 176.621 102.725) (223.547 154.569 101.787) (216.735 132.933 103.892) (234.937 143.767 103.828) (203.039 154.269 104.912) (207.431 132.933 106.385) (197.267 176.411 103.857) (205.387 187.703 103.276) (187.490 210.195 103.050) (193.993 232.177 108.430) (189.535 252.556 117.659) (202.315 262.170 126.142) (173.809 262.194 117.792) (164.878 242.899 106.257) (171.578 221.549 101.145) (178.817 198.952 101.696) (186.007 176.286 102.897) (192.557 154.095 104.319) (191.341 132.933 102.500) (159.324 262.036 114.489) (147.683 252.928 109.743) (142.111 232.567 105.030) (151.193 209.795 100.863) (160.463 186.318 98.751) (169.390 163.156 97.382) (177.457 141.252 96.924) (172.529 129.088 98.047) (165.095 146.289 98.761) (155.429 169.761 100.321) (145.163 194.366 102.781) (134.813 218.814 105.983) (124.887 241.373 112.746) (115.932 260.565 121.039) (109.996 241.818 119.556) (120.270 221.286 111.719) (131.002 198.100 106.516) (141.817 174.008 102.930) (152.343 150.337 100.258) (162.230 128.369 98.760) (160.981 114.926 97.683) (149.770 131.893 98.662) (139.007 154.257 101.776) (127.937 177.594 106.119) (116.761 200.720 111.263) (105.668 222.123 118.729) (84.476 229.970 128.232) (86.329 201.978 120.898) (101.851 202.030 116.291) (104.356 171.573 110.850) (110.269 160.843 108.148) (122.011 139.311 103.400) (133.694 118.449 99.885) (145.386 100.825 98.046) (131.700 98.445 100.217) (119.510 121.967 102.855) (136.209 135.679 100.425) (107.406 142.350 106.768) (95.226 162.809 111.760) (82.834 182.555 117.777) (70.107 200.654 124.910) (74.028 219.401 128.642) (53.139 198.237 128.582) (49.695 179.781 124.721) (66.612 181.718 121.429) (70.129 154.294 115.697) (83.388 136.275 111.165) (96.505 117.955 107.528) (109.602 100.336 104.789) (123.860 83.493 102.695) (108.510 85.160 105.805) (94.972 102.330 107.748) (80.299 120.882 110.578) (67.467 136.623 113.921) (53.483 153.237 118.530) (32.264 177.067 128.000) (235.681 132.933 104.717) Et normalement à la fin il faut enlever ce qui reste du premier triangle
-
Pour ceux qui savent résoudre rien qu'en lisant ce nouveau défit, je leurs demande de bien vouloir patienter jusqu'à Lundi soir avant de donner leur solution afin de permettre aux autres de rechercher. Je pense qu'il est d'un niveau intermédiaire J'ai une liste qui se compose de cette manière (setq lst '(1 2 3 5 7 10 11 12 14 20 30 31 33 37 39 40 44 76 80)) J'aimerai un liste qui ne contienne que les chiffres pair @+
-
Allez, un peu de géométrie. Il s'agit de faire une routine qui évalue si deux droites, définies respectivement par les points p1, p2 et p3, p4 sont parallèles. Exemple : (parallel-p p1 p2 p3 p4) retourne T si p1 p2 est parallèle à p3 p4 PS : p1 p2 p3 p4 sont des points 3d, bien sûr.
