【问题标题】:LabVIEW help explain simple Fibonacci sequenceLabVIEW帮助解释简单的斐波那契数列
【发布时间】:2013-03-27 05:01:24
【问题描述】:

我有一个涉及斐波那契数列的 LabVIEW 课程的作业,这是正确的问题:

创建一个使用 WHILE 循环的 VI 来不断计算斐波那契数列的迭代,直到达到 |fib(n-1)/fib(n) - fib(n-2)/fib(n-1)| 的比率。收敛。输入应包括序列的前两个元素和收敛幅度。输出应该是收敛所需的迭代次数。

我查看了维基百科,但没有帮助。我已经做了一些谷歌搜索,但仍然没有。我不明白斐波那契数列是什么,也不知道如何使其收敛。两个用户输入的元素从哪里来,大小是多少。我可以编码,但我不会编码。如果你明白,请给我解释一下。

说清楚,我真的不想让你给我代码,只是澄清一下;谢谢。

【问题讨论】:

  • 斐波那契数列是从 1、1、2、3 开始并继续生成的,因此后续项是前两个数字的总和。 Stackoverflow 不适用于math.stackexchange.com 上的此类问题

标签: math sequence fibonacci labview


【解决方案1】:

在 while 循环中使用 for 循环。在 for 循环中,放置一个移位寄存器并向移位寄存器添加一个元素。在每个元素上创建一个数字控件。将加法和除法符号放在for循环中,将移位寄存器的两个元素连接到加法符号。在加法符号的另一端,将其连接到右侧对面的移位寄存器,在加法符号线输出后,将其连接到除法符号的顶部连接,您的除法符号的另一个输入部分,将其连接到加法符号的顶部输入。通过这样做,您的加法输出被传递到移位寄存器并围绕循环移回顶部输入,然后顶部输入中的前一个元素将传递到底部元素,传递给加法符号和输出除由previuos 移位的元素现在是当前的顶部输入。加法输出是斐波那契数字,除法符号输出将是您的黄金数字。然后您必须将数字指标和图形放在 for 循环中,使用反馈节点构建数组并将它们初始化并指定要运行的迭代次数,这可以通过在左上角的蓝色 N 上创建一个常量来完成for 循环。然后,while 循环将继续运行,或者如果您想在删除 while 循环后生成它们。任何进一步的帮助电子邮件。希望它会有所帮助,我不会太晚。

【讨论】:

    【解决方案2】:

    你可能需要那种风格的东西。尝试将以下 Python 代码转换为 LabVIEW。在 while 循环中使用移位寄存器。 :

    import math
    ordofmag = 4
    result = 1
    n = 0
    while result >= ( 10 ** (-ordofmag) ):
      n = n + 1
      if n == 1 or n==2:
        x0 = 1.0     # fib(n)
        x1 = 1.0     # fib(n+1)
        x2 = x1 + x0 # fib(n+2)
        result = math.fabs(x1/x2 - x0/x1)  
      elif n > 2:
        x2 = x1 + x0
        result = math.fabs(x1/x2 - x0/x1)  
        x0 = x1
        x1 = x2
      print int(x1), round(result,ordofmag)
    

    【讨论】:

      猜你喜欢
      • 2015-01-06
      • 1970-01-01
      • 1970-01-01
      • 2016-06-27
      • 2014-01-16
      • 2015-06-05
      • 1970-01-01
      相关资源
      最近更新 更多