宏算简单编程计算
2017-09-29 12:17:13 NUMKIT.COM 欢迎转载,转载请注明出处宏算让计算器编程变得极为简单,写出数学算式即是编写了计算器程序。
宏算可处理的数学算式需要遵从一定的规范,可以是单步算式,也可以是多步算式。而且引入了等号(=)作为赋值操作符号。
宏算会分析数学算式,确定哪些变量需要用户输入、哪些是被赋值的变量从而可作为计算结果输出等信息,最终生成合适的用户界面。
单步算式
单步算式是一个传统意义上的数学式子,可以含有变量,另外可选择将其结果赋给某个变量。
例如:1+2
、(a+b)/2
、x1*x2+x1/x2
、e=m*c^2
。
单步算式的规范包括变量、科学计数法、范围与精度、运算符、常量与函数、赋值这几个方面。
变量
变量的格式为:以下划线(_)或英文字母开头的连续的下划线、英文字母、数字。其中,英文字母区分大小写。
例如,abc
、X1
、x1
、_A2
都是格式正确的变量名。
X1
与x1
是两个不同的变量。
有些名字是保留字,不能用作变量名:
变量保留字 | |||
---|---|---|---|
E | PI | if | else |
not | and | or | xor |
科学计数法
使用字母E表示科学计数法,例如1.2E30
表示数值1.2 × 1030
。
范围与精度
宏算能识别的数值的绝对值的范围如下:
- 最大 = 1.7976931348623157 × 10308
- 最小(最接近0) ≈ 5 × 10-324
绝对值超出以上最大值的正数会被作为Infinity
处理;绝对值超出以上最大值的负数会被作为-Infinity
处理;
绝对值小于以上最小值的数值会被作为0
处理。
宏算读入数值和输出结果的最大有效数字个数为:
- 读入数值 17位有效数字
- 输出结果 12位有效数字
若输入的数值有效数字位数大于17位,则第18位及以后的有效数字会被忽略(忽略掉过多的有效数字,不会影响数量级)。 输出结果最多保留12位有效数字。另外,若输出结果整数或小数部分的数字个数过多就采用科学计数法表示。
运算符
为了便于输入,使用星号(*)作为乘号,使用斜线(/)作为除号,使用托字符(^)作为乘方符号。
宏算共支持8个运算符,详见宏算支持的运算符。
常量与函数
要使用常量只需写出常量的名称即可,例如E
是自然对数的底。注意:因为常量E的存在,无法再将E
作为变量名。
函数调用的格式为<函数名>(<参数表>)
,例如cos(3.1416)
、max(1,2)
。
注意:类似cos 3.1416
的写法是错误的。
宏算内置了2个常量和40多个函数,详见宏算支持的常量与函数。
赋值
等号(=)表示赋值(与数学等式中的等号含义不同),即:将等号右侧的式子的结果赋给等号左侧的变量。
例如,e=m*c^2
表示在确定变量m和c的值后计算m*c^2
并将结果赋给变量e。
多步算式
多步算式由若干个单步算式组成,每个单步算式都以分号(;)结尾。 宏算会按照从前往后的顺序依次处理其中的每个单步算式,从而可以使前面算式的计算结果参与后续某些算式的计算。
例如,c=a-b;d=(a+b)*c;
就是由c=a-b
和d=(a+b)*c
两个单步算式组成的。
宏算会处理这个多步算式,生成用户界面,获得用户输入的变量a和b的值后依次计算两个单步算式,最终将变量c和d的值作为结果显示。
其中变量c是第一个单步算式的结果,它同时也参与了第二个单步算式的计算。
使用多步算式可以实现一次输入多个参数,计算后得到多项结果。
更复杂的编程计算需要使用宏算算式,其语法相对不易掌握,更适合进阶用户(或开发者)使用。 使用宏算算式生成的用户界面可含有丰富的界面元素,且可实现更多高级功能,例如:按条件计算、得出文字结果、查询远程服务器等。 详见宏算算式语法。