【发布时间】:2015-05-25 20:55:10
【问题描述】:
我将如何使用用户输入的值来限制 for 循环中的术语。该程序的目标是让用户输入项的数量、起始值和计数间隔。谢谢!
【问题讨论】:
标签: calculator ti-basic
我将如何使用用户输入的值来限制 for 循环中的术语。该程序的目标是让用户输入项的数量、起始值和计数间隔。谢谢!
【问题讨论】:
标签: calculator ti-basic
您的问题很容易通过咨询TIBasicDev 来回答,特别是Input、Prompt 和For( 的页面。 Input 和 Prompt 是不言自明的;它们用作从用户检索输入的两种方式。 For( 可以接受参数来展示你想要的行为。
PromptPrompt 更小更脏。程序
Prompt A
将产生以下输出。
A=?
InputInput 是更大更简洁的选项。程序
Input "ENTER VALUE:",A
将产生以下输出
ENTER VALUE:
For取自 TIBasicDev:
For 循环有四个参数:变量(A-Z 或 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( 表示表达式,基本上告诉计算器计算传递给它的字符串。但首先,{ 被附加到前面,因此计算器将其解释为存储在 Ans 变量中的列表。列表的各个元素以 [listname](位置)格式访问,因此Ans(1) 将获取列表的第一个元素(在本例中为起始值 1),依此类推。
【讨论】: