1

我想知道如何在不对其进行评估的情况下返回表达式。

Define LibPub exactly(r,l,c,vi,vf)=
Func
   :Local t
   :Local diff
   :If l=0 Then
   : t:=−1*((1)/(r*c))
   :Else
   : t:=−1*((1)/(((r)/(l))))
   :EndIf
   :diff:=vi-vf
   :setMode(5,3)
   :Disp (vf+diff*e^(t))
   :EndFunc

我希望它返回类似
.

有没有办法做到这一点?谢谢你的帮助!

4

2 回答 2

0

问题是您正在输出一个表达式,它将评估。解决方案是使输出成为字符串和变量的组合,如下所示:

Disp wf,"+",diff,"*e^(",t,")"

这你也可以删除线setMode(5,3),因为它不是必需的。我在我的 TI-nspire CX(无 CAS)上运行了代码,它运行良好(至少输出,我不确定程序到底做了什么)。这是我运行的完整程序,并进行了更正。

Define LibPub exactly(r,l,c,vi,vf)=
Func
    Local t
    Local diff
    If l=0 Then
      t:=−1*((1)/(r*c))
    Else
     t:=−1*((1)/(((r)/(l))))
    EndIf
    diff:=vi-vf
    Disp wf,"+",diff,"*e^(",t,")"
    EndFunc

祝你的程序好运。

于 2016-03-30T12:08:04.867 回答
-1

大多数德州仪器计算器的工作方式是,在任何地方输入任何方程即可立即求解方程。大多数其他编程语言做同样的事情(他们应该)。如果我对您的理解正确,您希望将方程式打印到屏幕上。如果是这样,您需要做的就是在字符串中输入等式。 这只会将方程式打印到屏幕上,而不对其进行评估。计算器会将其视为字符列表,而不是方程式,因此它将输出方程式而不是方程式的解。

于 2016-01-11T18:45:38.970 回答