cnCalc计算器论坛

 找回密码
 注册
搜索
查看: 3485|回复: 9

[Nspire] ns如何判断是否可以分解

[复制链接]
发表于 2010-9-4 21:00:35 | 显示全部楼层 |阅读模式
ns的编程能不能做到:
若指定代数式可分解,则显示分解结果,若不可分解,则显示“不可分解”?
如果可以,请告诉我怎么做,谢谢。
发表于 2010-9-4 21:10:09 | 显示全部楼层
if string(expand(f(x)))=string(f(x))
then
else
endif
发表于 2010-9-4 21:11:30 | 显示全部楼层
不完全对,要用exp>string 表达式转string的函数
不然会出错

。。我错了。。完全对。。
 楼主| 发表于 2010-9-4 21:27:18 | 显示全部楼层
不完全对,要用exp>string 表达式转string的函数
不然会出错
imath 发表于 2010-9-4 21:11

能不能解释的易懂一点……我是初学者……
发表于 2010-9-4 22:10:46 | 显示全部楼层
程序方法解决。

判定是否被分解
伪代码
def isFactorable(expr):
  if str(factor(expr))==str(expr):
    return False
  else
    return True
发表于 2010-9-4 22:33:52 | 显示全部楼层
大家的思路都是判断输出的表达式和输入的"看上去"是否一致,但我提醒下,有时ns会自动调整各项的顺序,因此这种方案会有重大bug
发表于 2010-9-4 22:39:30 | 显示全部楼层
果然...杯具
试试看能不能判断是否有括号外面的加/减号?
Screen001.png
Screen002.png
发表于 2010-9-4 22:40:14 | 显示全部楼层
应该是
defined sfact(input)=
Prgm
function:=input
if string(factor(function)=string(function)  then
disp "Can't Factor."
else
disp factor(function)
EndIf
EndPrgm
发表于 2010-9-5 13:52:12 | 显示全部楼层
晕。分解。。我理解成了expand,大大地错了
 楼主| 发表于 2010-9-5 17:00:26 | 显示全部楼层
谢谢
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|cnCalc计算器论坛

GMT+8, 2024-11-1 08:10 , Processed in 0.058565 second(s), 26 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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