【问题标题】:If Then statement displays all possibilitesIf Then 语句显示所有可能性
【发布时间】:2016-11-30 08:18:30
【问题描述】:

我正在尝试根据用户的输入显示文本。例如输入单词APPLE应该让它显示BANANA。

这个 sn-p 工作正常:

:Input X
:If X=APPLE
:Disp "BANANA"

但我不确定如何以此为基础进行一系列检查:

:Input X
:If X=Apple
:Disp "BANANA"
:If X=LEMON
:Disp "LIME"
:If X=PEACH
:Disp "PEAR"

如果我这样做,无论我实际输入什么,它都会按顺序显示 BANANA、LIME 和 PEAR。我错过了什么?

【问题讨论】:

    标签: calculator ti-basic


    【解决方案1】:

    尝试重写您的 sn-p 以使用 Str1 而不是 X。这将确保您将字符串类型与另一种字符串类型进行比较。

    :Input Str1
    
    :If Str1="APPLE"
    :Then
    :Disp "BANANA"
    :End
    
    :If Str1="LEMON"
    :Then
    :Disp "LIME"
    :End
    
    :If Str1="PEACH"
    :Then
    :Disp "PEAR"
    :End
    

    【讨论】:

    • 你好,当我尝试这个时,我得到 ERR:DATA TYPE
    【解决方案2】:

    接受的答案是正确的,但它使用了不必要的 Then/End 语句和结束引号,总共额外增加了 18 个字节。我会推荐这个更类似于你原来的代码:

    Input Str1
    If Str1="APPLE
    Disp "BANANA
    If Str1="LEMON
    Disp "LIME
    If Str1="PEACH
    Disp "PEAR
    

    假设上面的代码是一个完整的程序,可以简写为:

    Input Str1
    If Str1="APPLE    <-- you can remove this line if you know there will be no invalid input
    "BANANA
    If Str1="LEMON
    "LIME
    If Str1="PEACH
    "PEAR
    Ans
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-01-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多