董师傅CAD助手——实用的CAD插件,实用的暖通功能,实用的CAD功能

 找回密码
 立即注册
查看: 1669|回复: 0

CAD画图狗的救赎——Lisp语言学习之路(三):强化练习数学...

[复制链接]

49

主题

5

回帖

818

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
818
发表于 2024-1-1 17:34:21 | 显示全部楼层 |阅读模式
上期有初步讲过Lisp中关于四则运算的方式,今天再深入讲下四则运算,然后再讲一些其余的数学计算。
本期你会学到以下内容:
  • 四则运算
  • 三角函数计算,圆周率的表示,求绝对值
  • 四舍五入
1.四则运算
Lisp的特色在运算符放在前面,例如5+5它会写成(+ 5 5),其余如括号优先运算则和普通运算一致,例如(+ 5 (/ 100 2))=5+(100/2)=55。
再来看几个复杂一点的:
10/5+2+(1+3):(+ (+ (/ 10 5) 2) (+ 1 3))=8,先算10+5,然后再加2,然后再加(1+3)
100+10/5/2+1:(+ (+ 100 (/ (/ 5 5) 2) 1))=102
刚开始的时候学Lisp,可能第一个难点就是这个四则运算了,乍一看其实这个还挺难的,不过只要理解了,其实就不难了,我总结的一点就是从左向右看,每次运算加一个括号。
2.三角函数
CAD其实都是几何图形,那几何图形是离不开三角函数的,而Lisp是自带了三角函数计算的,下面是常用的几个:
圆周率的表示:直接用英文'pi'表示,很简单,Lisp中自带的三角函数都是用弧度表示而不是角度,这点要注意,我发现只有下列3个三角函数,其余都要靠用这3个函数来计算。
正弦函数:(cos pi)=-1
正切函数:(sin (/ pi 2))=1,我测试了下(sin pi)近似为0.0016。
反正切函数:(atan 1)=0.785,其实就是pi/4
3.角度与弧度的相互转化
弧度转角度的函数是angtos,角度转弧度是angtof,下面是它们的使用方法:
(angtof "45" 3)=3.141,就是把45度转化为了弧度,其实就是pi,里面的那个3是指输出的弧度保留几位小数,3就是3位,所以是3.141
(angtos -4.1 0 1)="-125.1",第一个参数-4.1就是弧度,第二个参数是0,这个不用深究,是计数的一种表示,照写就行,第三个参数1就是要保留几位小数。
值得注意的是角度都要用英文的双引号“”表示,其本质是Lisp把角度当作字符串。所以不能直接把得出的值进行数学运算,要转化一下,这个后面再说。
4.四舍五入
Lisp自带的函数是rtos,它的用法如下:
(rtos 10.154 2 1)=10.2,第一个参数10.154不说了,要操作的值,第二个参数2也不必深究,,第三个参数1就是要保留小数位了,1就是保留一位。
以上都学会了吗?一定要学会啊。

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|董师傅CAD助手

GMT+8, 2024-5-18 19:59 , Processed in 0.021178 second(s), 18 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表