TI-BASIC:索引提示或输入命令

TI-BASIC: Indexing to Prompt or Input command

我有一个 TI-84 Plus,我正在创建一个程序来计算 n 维向量的大小。我在下面包含了我的代码及其输出。

节目编辑:

PROGRAM:NTHDMAG
Disp "HOW MANY DIMENSIONS?"
Prompt N
{X,Y,Z,T,A,B,C,D,E,F,G,H,I,J,L,M,P,U,V,W}->L1
For(K,1,N,1)
L1(K)->Q
Prompt Q
End

输出显示:

pgrmNTHDMAG
HOW MANY DIMENSIONS?
N=?3
Q=?1
Q=?2
Q=?3
Done

我想用 L1 中的每个字母替换 Q,在 Prompt 命令中索引 L1(K) 会引发错误。 L1 字母的值将是每个组件的值(所以在这里,例如,1i + 2j + 3k)。

我希望这是清楚的,但如果不是,我非常愿意澄清。感谢您提供的任何帮助!

这可能是您想要做的,

Prompt N
0->dim(|LT
For(I,1,N
    Input sub("XYZTABCDEFGHIJLMPUVW",I,1)+"=?",X
    X->|LT(I)
End
Disp |LT
DelVar |LT

使用

Input 代替 Prompt,允许我们选择字符串。该字符串是通过从 "XYZTABCDEFGHIJLMPUVW" 中取出一个单字母子字符串然后向其附加 "=?" 来构建的,使其看起来就像 Prompt,当然这很容易更改。这是 SourceCoder 语法,所以 |L 表示列表名称的奇怪小 ∟。如果列表 T 被存档则不起作用,它可以工作但 IMO 它不应该,通常一个存档列表意味着用户想要保留它。

让用户自己输入列表要容易得多,例如

Input "Input List:",|LT
Disp |LT
DelVar |LT

这允许更方便的用户输入,例如 Rcl(整个列表的)和列表操作,例如:

或者更典型的:

N 不明确。

将结果留在 Ans 中可能很有用。通过在最后一行评估一个值而不是正确的命令来隐式打印摆脱了 Done 这不是很有用,但它是你可以做的事情。

Input "Input List:",|LT
sqrt(sum(|LT^^2
DelVar |LT
Ans