计算器 abacus 2 今日发布了. 下载网址 http://www.oschina.net/code/snippet_736932_13725, 技术文档网址:http://my.oschina.net/zhcosin/blog?catalog=254400
abacus 是一个简易的、可扩展的、开源的小型计算器,支持四则混合运算和众多的数学函数,如三角函数和组合数等,支持符号常量,第2版又添加了对变量和用户自定义函数的支持。
在使用变量之前必须先定义它,使用 var 指令可以定义变量,变量的名称由字母和数字组成,但必须以字母打头:
var x, y, z
如果一次性定义多个变量需要使用逗号分隔,也可以在定义变量的时候给它一个值:
var x = 3, y, z = cb(2, 10) + 3!
变量在参与运算之前必须赋值,对已经定义了的变量进行赋值可以使用 let 指令:
let x = sqrt(2), y = x + 1
变量可以反复赋值,也可以用一个变量为另一个变量赋值,前提是前者必须具有值。在表达式中可以直接使用变量参与运算,如果使用没有赋值的变量将产生一条错误信息。
第2版最大的更新就是用户自定义函数的功能,这个功能允许用户把自己最常用的一些表达式定义成函数并直接使用,例如用户经常求解一元二次方程,他就可以把求根公式定义成函数:
func solve(a, b, c) = (-b+sqrt(b^2-4*a*c)) / (2*a)
然后就可以在自己要计算的表达式中直接调用这个函数,从而实现解一元二次方程的目的。
用户可以把圆的面积公式定义为一个函数:
func AreaCycle(r) = pi * r * r
当遇到圆环时,用户可以使用刚刚定义的圆的面积函数来定义圆环的面积:
func AreaRing(R, r) = AreaCycle(R) - AreaCycle(r)
有任何问题或者建议,请致邮件:zhoucosin@163.com