s7200 随机整数 点击:381 | 回复:3



csjks

    
  • 精华:0帖
  • 求助:1帖
  • 帖子:2帖 | 2回
  • 年度积分:0
  • 历史总积分:11
  • 注册:2009年9月19日
发表于:2013-11-06 16:59:13
楼主

如何读取一定范围内(比如20<读取数值<50)的随机整数.




gkhb1

  • 精华:0帖
  • 求助:3帖
  • 帖子:10帖 | 217回
  • 年度积分:0
  • 历史总积分:317
  • 注册:2013年2月28日
发表于:2013-11-06 18:40:20
1楼

产生随机整数的函数有吗?

wyb2866255---王者之师

  • 精华:57帖
  • 求助:0帖
  • 帖子:148帖 | 2872回
  • 年度积分:1
  • 历史总积分:31450
  • 注册:2010年7月01日
发表于:2013-11-06 20:23:13
2楼

  可以这样编程:1、设MB10为读取随机数的地址,取VB100作为存数区的首址,VB10作为随机数MB10变化前的存数区。2、用比较指令进行判断:当MB10≠VB10时(即读取数改变),对MB10进行判断:如 20 < MB10 < 50时,将MB10存入数据区。详见下面梯形图:


  MB10为读取的随机数 如其值<20又<50时,将其Y依次送入数据区,首址为VB100、VB101、VB102....

  本程序经上机运行,符合楼主要求。

wyb2866255---王者之师

  • 精华:57帖
  • 求助:0帖
  • 帖子:148帖 | 2872回
  • 年度积分:1
  • 历史总积分:31450
  • 注册:2010年7月01日
发表于:2013-11-06 22:48:44
3楼

程序说明:网络1:为初始化:将数据区的首址VB100的地址送入VD90,再将MB10=0.网络2:时时的对随机数的进行判断:如随机数MB10发生改变(即MB10≠VB10)即立刻对MB10进行大小的判断,如MB10值为 20~50 之间的整数,立即将MB10送入数据区,且将VD90加1,之后再将MB10->VB10.如MB10不为 20~50 之间的数,立即将MB10->VB10。




 


热门招聘
相关主题

官方公众号

智造工程师