我将如何使用用户输入的值来限制 for 循环中的术语。该程序的目标是让用户输入项的数量、起始值和计数间隔。谢谢!
2 回答
咨询TIBasicDev可以很容易地回答您的问题,特别是Input
、Prompt
和的页面For(
。Input
并且Prompt
是不言自明的;它们用作从用户检索输入的两种方式。For(
可以通过参数来展示你想要的行为。
Prompt
Prompt
更小更脏。该程序
Prompt A
将导致以下输出。
A=?
Input
Input
是更大更清洁的选择。该程序
Input "ENTER VALUE:",A
将导致以下输出
ENTER VALUE:
For
取自 TIBasicDev:
For 循环有四个参数:变量(AZ 或 theta)、起始值、结束值和增量。它以指定的增量从起始值计数到结束值。
...
Format :For(variable,start,end[,increment]) :Command(s) :End
编写程序现在只需要使用输入命令来检索用户输入,然后使用 for 循环来创建所需的效果。
正如dohaqatar7所说,您可以使用基本输入命令来实现您的目标。但是,还有一种(稍微高级一点的)方法允许用户一次输入所有值,用逗号分隔。为此,您输入一个字符串,将其存储到一个内置的字符串变量(如Str1
)中,然后将其转换为数字列表,最后访问列表中的每个元素以获取For(
循环中的参数。
Input "START,END,STEP: ",Str1 //Whatever is input goes into Str1 as a string
//For example, "1,100,2"
expr("{"+Str1 //Then it is converted into a list like {1,100,2}
For(X,Ans(1),Ans(2),Ans(3) //Evaluates to For(X,1,100,2
[your code]
End
expr(
表示表达式,并且基本上告诉计算器评估传递给它的字符串。但首先,a{
被附加到前面,因此计算器将其解释为一个列表,该列表存储在 Ans 变量中。列表的各个元素以 [listname](位置)格式访问,因此Ans(1)
将获取列表的第一个元素(在本例中为起始值 1),依此类推。