1

我有一个 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

我希望将 Q 替换为 L1 中的每个字母,并且在 Prompt 命令中索引 L1(K) 会引发错误。L1 字母的值将是每个组件的值(例如,1i + 2j + 3k)。

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

4

1 回答 1

1

这可能是你想要做的,

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

在此处输入图像描述

于 2017-09-13T13:30:59.960 回答