首页 理论教育使用反馈节点的For循环求n!

使用反馈节点的For循环求n!

【摘要】:在默认状态下,反馈节点仅保存上一次执行或循环所得的数据。反馈节点边框上的数字为延迟。循环中一旦连线构成反馈,就会自动出现反馈节点箭头和初始化端子。的值,由于本题需要访问以前的循环的数据,所以要使用移位寄存器或反馈节点。因为反馈节点和只有一个左端子的移位寄存器的功能相同,所以可使用反馈节点来完成的程序,具体程序框图如图5-25所示。图5-25 使用带反馈节点的For循环求出n!

反馈节点主要保存 VI 或循环上一次的运行数据,反馈节点使用连线至初始化接线端的值作为第一次程序框图执行或循环的初始值。如初始化接线端未连线任何值,该 VI 使用数据类型的默认值。反馈节点可保存上一次执行或循环的结果。

可使用启用接线端来启用或禁用反馈循环。如设置启用接线端为 TRUE,反馈节点按用户在属性对话框或节点快捷菜单中的配置运行。如启用接线端设置为FALSE,反馈节点将忽略输入值并输出接线端为 TRUE时最近一次循环的值。反馈节点将一直输出该值,直到反馈节点的启用接线端转换为 TRUE为止。

在默认状态下,反馈节点仅保存上一次执行或循环所得的数据。通过使节点延迟多次执行或循环输出,可配置反馈节点存储n个数据采样。如增加延迟值,使其大于一次执行或循环的执行时间,在延迟结束前,反馈节点仅输出初始化接线端的值。然后,反馈节点可按顺序输出存储值。反馈节点边框上的数字为延迟。

循环中一旦连线构成反馈,就会自动出现反馈节点箭头和初始化端子。使用反馈节点需要注意其在选项板上的位置,若在分支连接到数据输入端的连线之前把反馈节点放在连线上,则反馈节点把每个值都传递给数据输入端;若在分支连接到数据输入端的连线之后把反馈节点放到连线上,反馈节点把每个值都传回 VI 或函数的输入,并把最新的值传递给数据输入端。

如图5-24所示,求 n!的值,由于本题需要访问以前的循环的数据,所以要使用移位寄存器或反馈节点。图5-24所示是使用移位寄存器来实现计算n!的功能。

因为反馈节点和只有一个左端子的移位寄存器的功能相同,所以可使用反馈节点来完成的程序,具体程序框图如图5-25所示。

978-7-111-53194-4-Chapter05-32.jpg

图5-24 使用带移位寄存器的For循环求出n!

978-7-111-53194-4-Chapter05-33.jpg(www.chuimin.cn)

图5-25 使用带反馈节点的For循环求出n!

本题目如果使用While循环实现则需要构建条件来判定其什么时候执行循环,此时可以通过自增的数是否小于输入数来判断是否继续执行,如图5-26所示。

对于上面3个程序框图,当输入6时,输出结果均为720,如图5-27所示。

978-7-111-53194-4-Chapter05-34.jpg

图5-26 使用带移位寄存器的While循环求出n!

978-7-111-53194-4-Chapter05-35.jpg

图5-27 n!的输出结果