为什么我的TI-84程序终止了?

时间:2013-04-24 20:33:03

标签: calculator ti-basic

不确定为什么,但我的程序一直在终止。我删除了所有Stop功能。这是代码:

    :Lbl A
    :ClrHome
    :Prompt A
    :ClrHome
    :Prompt B
    :ClrHome
    :Prompt C
    :Disp "B^2-4AC=" (Program stops here for some reason)
    :If D<0
    :Then
    :ClrHome
    :Disp "Nonreal answer"
    :"..."
    :Pause
    :ClrHome
    :Menu("Menu", "Restart", D"
    :Lbl prgmQUADSTE3
    :Lbl A
    :...

1 个答案:

答案 0 :(得分:1)

我怀疑你的程序正在退出,因为你从不使用“结束”来结束你的if语句。除非var D小于零,否则程序将在该If语句上执行WILL EXIT,因为此后的每一行都被视为If语句的一部分,因此被忽略。使用“结束”标记指定哪些行是If语句的一部分,哪些行不是。我怀疑你想要:

:If D<0
:Then
:ClrHome
:Disp "Nonreal answer"
:"..."
:Pause
:ClrHome
:Menu("Menu", "Restart", D"
:End
:...

或类似的东西。我99%肯定这是你的问题。

要注意的其他事项是你宣布Lbl A两次。在TI-BASIC中,当您使用Goto A时,计算器从程序开头开始,并查找第一个“Lbl A”,在这种情况下是第一行。其次,在你的菜单中,通过在你的唯一选项之后放置“D”参数,一旦用户点击它,你将标记D,这不存在,因此,程序将退出并返回错误Lbl

这一行: Lbl prgmQUADSTE3

不是有效行。我假设您希望程序要么自己调用,要么调用单独的程序。如果程序正在调用自己,我建议您使用Goto语句,因为您的方法会导致类似于堆栈溢出/内存泄漏。