TI-84基于布尔表达式设置变量

时间:2015-03-08 04:17:36

标签: ti-basic

对于ti-84程序,我使用二次方程并将带有加号的根存储为N,将根存储为负符号为R.然后我只想使用正根作为其余部分的值程序(如果两者都是正面的,那么我只想检查一个是正面的),所以我做了如下:

If N>0 --> U

ElseR-->U

但它没有用。是否无法在if-else语句中将store用作命令?或者是否有另一种方法只选择正变量并将其存储为U?

2 个答案:

答案 0 :(得分:3)

好的,听着。 Blazo的回答是错误的。每个具有Else的If语句也需要Then和End。这是没有分段表达式编写它的正确方法(分段表达式通常是最好的方法,所以我建议你查看dohaqatar的答案):

If N>0
Then
N->U
Else
R->U
End

使用两个单独的单独的If,可以将代码的大小减少一个字节到17个字节:

If N>0
N->U
If N<=0
R->U

您可以进一步压缩它,节省5个字节以产生12个字节:

R->U
If N>0
N->U

您还可以使用分段表达式,例如下面的dohaqatar,也是12个字节:

N<0:RAns+Nnot(Ans->U

最好的部分是,算法更改会将代码大小减少到6个字节:

max(R,N->U

答案 1 :(得分:1)

通过标准IfElse语句可以轻松完成此操作;但是,更快捷的方法是通过piece-wise functions。在TI-Basic中,每个布尔表达式的计算结果为10,分别表示true和false。可以利用这一事实使某些条件表达式更短。

您的代码使用标准If Else语法:

If N>0
Then
N→U
Else
R→U
End

此选项长度为18个字节。

使用分段表达式,您的代码可以压缩为:

N<0:RAns+Nnot(Ans→U

导致一行代码只有12个字节长。