DenisHen Posté(e) le 30 avril 2015 Posté(e) le 30 avril 2015 Bonjours à tous, Voilà, j'ai un petit souci. J'ai deux chaines et il faut que j'en soustrais une à l'autre (Zgs=Zgs-prf). Pour celà, je dois convertir ces deux chaines en réels puis, convertir à nouveau le résultat en chaine. J'ai ceci : ;prf = "0.95" ;Zgs = "63.83" (setq Zgs (itoa (- (atoi Zgs) (atoi prf)))) Mais je suis paumé dans les "ITOA", "ATOI" et "RTOS" malgré la lecture de l'excellente "Introduction _a_AutoLISP.pdf" de (gile)... En effet, le résultat de Zgs me donne "63" et je n'ai plus de décimales... Et je n'ai pas de liens avec l'aide aux développeurs depuis Visual LISP. Si quelqu'un a une idée... Merci d'avance... Denis... Windows 11 / AutoCAD 2024 Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net). Davantage d'avantages, avantagent davantage (Bobby Lapointe). La connaissance s'accroît quand on la partage (Socrate). Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)
VDH-Bruno Posté(e) le 30 avril 2015 Posté(e) le 30 avril 2015 Slt, Presque il te manquais atof ;) (setq Zgs (rtos (- (atof "63.83") (atof "0.95")))) A+ 1 Apprendre => Prendre => Rendre
vincentp010 Posté(e) le 30 avril 2015 Posté(e) le 30 avril 2015 Salut, atoi transforme une chaine en entier, donc "63.83" devient 63.Il faut utiliser atof à la place pour conserver les décimales. Et itoa convertit un entier en chaine.Comme nous voulons un nombre à virgule, il faut utiliser rtos et lui dire combien nous voulons de chiffres après la virgule. (setq Zgs (rtos (- (atof Zgs) (atof prf)) 2 2)) 1 Aide au téléchargement du cadastre dgfip-download-helper Insertion de photos géolocalisées exif https://www.dropbox.com/s/gkf6o9ac2hxen97/exifscr.zip?dl=0 Script correction BUG SPDC V2, propriétaire département 21 et 22 : https://greasyfork.org/scripts/442400-spdcv2/code/SPDCV2.user.js
DenisHen Posté(e) le 30 avril 2015 Auteur Posté(e) le 30 avril 2015 Bonjour Bruno, Merci, je n'avais pas vu "ATOF"... Ca fonctionne nikel. Juste une petite question : j'avais mis un "princ" après ma formule pour vérifier la valeur de Zgs. (princ (srtcat "\nZgs=" Zgs))Mais je ne comprend pas pourquoi elle plante... En tous cas, merci encore, c'est impécable... Denis... Windows 11 / AutoCAD 2024 Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net). Davantage d'avantages, avantagent davantage (Bobby Lapointe). La connaissance s'accroît quand on la partage (Socrate). Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)
VDH-Bruno Posté(e) le 30 avril 2015 Posté(e) le 30 avril 2015 Re, Mais je ne comprend pas pourquoi elle plante...strcat tes doigts ont dérapé sur le clavier en programmation cela ne pardonne pas...Tu n'utilises pas l'IDE Visual Lisp d'AutoCAD? A+ Apprendre => Prendre => Rendre
(gile) Posté(e) le 30 avril 2015 Posté(e) le 30 avril 2015 Salut, Ça ne marche pas parce que strcat attend des chaînes de caractères comme argument et la variable Zgs est liée à un nombre réel. Il faut convertir Zgs en chaîne avec rtos :(princ (srtcat "\nZgs=" (rtos Zgs))) ou passer directement Zgs à princ qui accepte tous les types d'expression LISP:(princ "\nZgs=") (princ Zgs)) 1 Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
DenisHen Posté(e) le 30 avril 2015 Auteur Posté(e) le 30 avril 2015 Merci Bruno... Effectivement... J'ai rippé... J'utilise pourtant l'IDE mais je n'avais pas remarqué la couleur... C'est pourtant simple... Je me donnerais des baffes parfois... Merci encore... Denis... Windows 11 / AutoCAD 2024 Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net). Davantage d'avantages, avantagent davantage (Bobby Lapointe). La connaissance s'accroît quand on la partage (Socrate). Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)
(gile) Posté(e) le 30 avril 2015 Posté(e) le 30 avril 2015 En ce qui concerne la documentation, tu trouveras des liens sur cette page (rubrique Documentation > AutoLISP).Ou encore, retrouver l'aide d'avant 2011 (acad_dev180.chm), regarde ici. 1 Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
VDH-Bruno Posté(e) le 30 avril 2015 Posté(e) le 30 avril 2015 C'est pourtant simple... Je me donnerais des baffes parfois... Si cela peut te rassurer en privé je m'en donne régulièrement, pas plus tard que ce matin avec la fonction ssget, alors que je pensais tous comprendre des sélections sous d'AutoCAD, je m'aperçois avec émerveillement que j'en découvre toujours plus… Apprendre => Prendre => Rendre
bonuscad Posté(e) le 30 avril 2015 Posté(e) le 30 avril 2015 Mais je suis paumé dans les "ITOA", "ATOI" et "RTOS" En comprenant l'anglais cela fais appel à une mnémmonique: ItoA = Integer TO AlphanumericAtoI = Alphanumeric TO IntegerRtoS = Real TO String Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius
VDH-Bruno Posté(e) le 30 avril 2015 Posté(e) le 30 avril 2015 En comprenant l'anglais cela fais appel à une mnémmonique: ItoA = Integer TO AlphanumericAtoI = Alphanumeric TO IntegerRtoS = Real TO StringPour compléter AtoF = = Alphanumeric TO Float Hé oui, cela aurait pu être StoR pour AtoF, ou FtoA pour RtoS mais non faut faire avec... Apprendre => Prendre => Rendre
DenisHen Posté(e) le 30 avril 2015 Auteur Posté(e) le 30 avril 2015 Effectivement, vu de cette manière, ça parait plus simple. Merci pour la mnémotechnie, j'essairais de m'en souvenir... Denis... Windows 11 / AutoCAD 2024 Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net). Davantage d'avantages, avantagent davantage (Bobby Lapointe). La connaissance s'accroît quand on la partage (Socrate). Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)
Messages recommandés
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 compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant