计算用户输入的四则运算列式 返回结果,包括判断用户输入的错误列式。
思路:(truka)
当检查表达式得到的结果没有任何错误,而此时的计算结果却是不正确(空),由此可以得出计算的中间过程中可能出现两种情况:
1:溢出
2:除零
由于director内部可以将数值自动转换成科学记数法,溢出的可能性就可以排除了,所以由此可以判断零作为除数出现在计算的中间步骤中.
如果要检查是否上溢可以这样
if string(value("power(10,500)"))="INF" then alert("overflow")
上溢的极限值可以达到10的308次方,在四则运算中出现的可能性几乎没有,所以没有考虑进去,如果下一次要做个科学计算器的话可能会用上。
程序实现:(truka)
更多讨论参考: http://www.aougu.net/bbs/read.php?topicid=7230
