【问题标题】:How to limit number of terms in for loop?如何限制 for 循环中的项数?
【发布时间】:2015-05-25 20:55:10
【问题描述】:

我将如何使用用户输入的值来限制 for 循环中的术语。该程序的目标是让用户输入项的数量、起始值和计数间隔。谢谢!

【问题讨论】:

    标签: calculator ti-basic


    【解决方案1】:

    您的问题很容易通过咨询TIBasicDev 来回答,特别是InputPromptFor( 的页面。 InputPrompt 是不言自明的;它们用作从用户检索输入的两种方式。 For( 可以接受参数来展示你想要的行为。

    Prompt

    Prompt 更小更脏。程序

    Prompt A
    

    将产生以下输出。

    A=?
    

    Input

    Input 是更大更简洁的选项。程序

    Input "ENTER VALUE:",A
    

    将产生以下输出

    ENTER VALUE:
    

    For

    取自 TIBasicDev:

    For 循环有四个参数:变量(A-Z 或 theta)、起始值、结束值和增量。它以指定的增量从起始值计数到结束值。

    ...

    Format
    :For(variable,start,end[,increment])
    :Command(s)
    :End
    

    现在编写程序只需要使用输入命令来检索用户输入,然后使用 for 循环来创建所需的效果。

    【讨论】:

      【解决方案2】:

      正如 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),依此类推。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-07-24
        • 2014-03-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-04-17
        • 2019-05-22
        相关资源
        最近更新 更多