- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
While循环
1.While循环是一种结构,它重复执行代码片段直到满足某种条件为止。它可比作传统语言中的Do Loop或Repeat-Until循环。它位于编程→结构→While循环。每个While循环都有一个条件端子和一个重复端子。如图:
重复端子用于记录和输出已执行的循环的次数,条件端子输入的是一个布尔变量:真或假,While循环将一直执行到连接条件端子上的布尔值变成真或假为止,取决于条件端子设置为“真(T)时停止”还是“真(T)时继续”。在条件端子上单击右键即可进行更改。如图:
下面举个简单的例子:利用While循环产生随机数,当产生的随机数大于0.8时,循环停止。 步骤如下:1. 打开前面板,新建两个数值显示控件,一个为循环次数,一个显示最后产生的那个大于0.8的随机数。如图:
2. 切换到程序框图,放置一个While循环,如图:
3. 放置随机数函数到While循环内,并连线,如图:
4. 放置比较函数,将循环次数与重复端子连线,如图:
5. 运行,即可在前面板上看到结果,如图:
在程序框图中,在数值显示控件上单击右键,可更改数值的类型,如图:
各种数值的类型都可以看见,我就不再赘述。 在While循环的边框上单击右键,可添加位移寄存器,如图:
有关位移寄存器的用法,我们将会在For循环中讲到,这里暂不做介绍。 注意:While循环的条件端子一定要有连线,否则程序无法运行!如图:
For循环
1. For循环位于函数→编程→结构→For循环,如图:
从图中可以看到,For循环有两个端子 计数端子:要执行循环的次数,可用于For循环内部的循环计数 重复端子:已执行循环的次数,可用于For循环内部的重复计数 For循环应用举例:产生10个随机数,并把最后一个显示出来。 步骤如下:1. 放置一个数值显示控件到前面板,并改名为随机数。2. 放置For循环到程序框图,如图:
3.放置随机数函数到程序框图,并连线4.计数端子上单击右键,选择创建常量,并输入10,如图:
5.运行程序,便可在前面板上看到结果。
6.因为程序的运行的速度非常快,我们无法一个一个地看清所产生的10个随机数,我们可以在程序框图中添加时间延迟控件。它位于函数→编程
→定时→时间延迟,如图:
7. 放置它到程序框图上,选择延迟的时间,即两次循环之间的时间间隔。如图:
8. 将时间设置为1.000,点击确定即可,再运行程序就可从前面板上看到所产生的随机数了。
移位寄存器
移位寄存器用于For循环或While循环中从一个迭代传输数据到下一个迭代,它由循环垂直边框上一对反向相反的端子组成,在边框上单击右键,选择添加移位寄存器,就可进行添加。如图:
右端子(带向上箭头的矩形)在每完成一次迭代后存储数据,移位寄存器将上次迭代的存储数据在下一次迭代开始时移动到左端子(具有向下箭头的矩形)上。移位寄存器可存储任何数据类型,包括数字,布尔,字符串和数组,但连接到同一个寄存器端子上的数据必须是同一类型。移位寄存器的类型与第一个连接到其端子之一的对象数据类型相同。
下面是1+2+3+4+…+100的程序,如图:
说明:进行第一次运算的是0+0,For循环中的重复端子是从0开始计数,移位即寄存器在没有初始化的情况下,默认的数值是0,所以第一次运算的是0+0,第二次运算的是寄存器的0与重复端子的1相加,所以循环要进行101次。而计数端子输出的数据始终是101。 移位寄存器的初始化:移位寄存器的初始化是非常必要的,因为只要用户不退出VI,移位寄存器便可记录上次运算完时的结果,所以上面的程序在第二次执行时输出的结果不是5050,而是10100!添加初始化即可,如图:
下面在举几个复杂一点的例子。
例一:计算一组随机数的最大值和最小值
新建一个VI,在前面板上放置一个波形图标,它位于新式→图形→波形图表,用它来记录产生的随机数。同时在前面板上放置两个数值显示控件“最大值”和“最小值”,用来显示随机数中的最大值和最小值。
在程序框图中,放置一个For循环,设置循环次数为50次。单击边框选择添加两个移位寄存器,分别初始化为0和1。
放置随机数函数和最大最小值函数与程序框图中,其中最大最小值函数位于编程→比较→最大值与最小值。然后连线。如图:
运行,便可在前面板上看到结果,如图:
例二:计算
在前面板上放置一个数值输入控件“阶次n”和一个数值显示控件“求和结果”
在程序框图上放置两个For循环嵌套结构,外层循环的计数端口与“阶次n”连接,输出是各个数的阶乘所组成的一个数组。它的重复端子加1作为内层循环的循环次数,内层循环利用一个移位寄存器实现阶乘运算,移位寄存器的初始值设为1。
同样在程序框图的右边在放置一个For循环结构,它的计数端
文档评论(0)