找回密码
 加入
搜索
查看: 3378|回复: 0

[效率算法] 请各位大大们帮忙把代码做简洁点

  [复制链接]
发表于 2012-10-1 00:45:55 | 显示全部楼层 |阅读模式
小弟小学三年级数学没及格



事先说明这不是数字运算

这个是用来多窗口制控的



原理是每次开5个窗口 总数10个

窗口1-5 (比如$ff01 ) 有3个数值 窗口6-10有4个数值

$ff01初始值为1当$ff01=1时 为要打开的窗口(窗口1-5从一开始是打开的) =100时为需要关闭但是要作为打开第6个窗口($ff06)的条件 (同时只运行5个窗口) =200时既不打开也不作为判断条件

窗口6-10(比如$ff06)初始值为10  $ff06=10时  表示这是从未打开过的窗口 其它同窗口1-5



要求是每当达到条件就关掉一个窗口(随机)  递进打开后面未打开过的窗口(前面的不再打开)   条件比如  手动关闭其中一个窗口(随机)  这里不需理会



请各位大大们帮忙把代码改简洁点  现在这样太冗长太坑爹了

如果总窗口数为100个 这代码将会长达 16850条(行数=总窗口数*3+17)

要是同时打开窗口为20个 代码更是会长达 21350条(行数=总窗口数*3+同时窗口数*20+2)

这是看到就让人蛋痛的数字



请各位大大们帮忙下改简洁点
  1. Func CHK2()
  2.         If $ff01 = 100 Then
  3.                 If $ff06 = 10 Then
  4.                         $ff06 = 1
  5.                         $ff01 = 200
  6.                 ElseIf $ff07 = 10 Then
  7.                         $ff07 = 1
  8.                         $ff01 = 200
  9.                 ElseIf $ff08 = 10 Then
  10.                         $ff08 = 1
  11.                         $ff01 = 200
  12.                 ElseIf $ff09 = 10 Then
  13.                         $ff09 = 1
  14.                         $ff01 = 200
  15.                 ElseIf $ff10 = 10 Then
  16.                         $ff10 = 1
  17.                         $ff01 = 200
  18.                 EndIf
  19.         ElseIf $ff02 = 100 Then
  20.                 If $ff06 = 10 Then
  21.                         $ff06 = 1
  22.                         $ff02 = 200
  23.                 ElseIf $ff07 = 10 Then
  24.                         $ff07 = 1
  25.                         $ff02 = 200
  26.                 ElseIf $ff08 = 10 Then
  27.                         $ff08 = 1
  28.                         $ff02 = 200
  29.                 ElseIf $ff09 = 10 Then
  30.                         $ff09 = 1
  31.                         $ff02 = 200
  32.                 ElseIf $ff10 = 10 Then
  33.                         $ff10 = 1
  34.                         $ff02 = 200
  35.                 EndIf
  36.         ElseIf $ff03 = 100 Then
  37.                 If $ff06 = 10 Then
  38.                         $ff06 = 1
  39.                         $ff03 = 200
  40.                 ElseIf $ff07 = 10 Then
  41.                         $ff07 = 1
  42.                         $ff03 = 200
  43.                 ElseIf $ff08 = 10 Then
  44.                         $ff08 = 1
  45.                         $ff03 = 200
  46.                 ElseIf $ff09 = 10 Then
  47.                         $ff09 = 1
  48.                         $ff03 = 200
  49.                 ElseIf $ff10 = 10 Then
  50.                         $ff10 = 1
  51.                         $ff03 = 200
  52.                 EndIf
  53.         ElseIf $ff04 = 100 Then
  54.                 If $ff06 = 10 Then
  55.                         $ff06 = 1
  56.                         $ff04 = 200
  57.                 ElseIf $ff07 = 10 Then
  58.                         $ff07 = 1
  59.                         $ff04 = 200
  60.                 ElseIf $ff08 = 10 Then
  61.                         $ff08 = 1
  62.                         $ff04 = 200
  63.                 ElseIf $ff09 = 10 Then
  64.                         $ff09 = 1
  65.                         $ff04 = 200
  66.                 ElseIf $ff10 = 10 Then
  67.                         $ff10 = 1
  68.                         $ff04 = 200
  69.                 EndIf
  70.         ElseIf $ff05 = 100 Then
  71.                 If $ff06 = 10 Then
  72.                         $ff06 = 1
  73.                         $ff05 = 200
  74.                 ElseIf $ff07 = 10 Then
  75.                         $ff07 = 1
  76.                         $ff05 = 200
  77.                 ElseIf $ff08 = 10 Then
  78.                         $ff08 = 1
  79.                         $ff05 = 200
  80.                 ElseIf $ff09 = 10 Then
  81.                         $ff09 = 1
  82.                         $ff05 = 200
  83.                 ElseIf $ff10 = 10 Then
  84.                         $ff10 = 1
  85.                         $ff05 = 200
  86.                 EndIf
  87.         EndIf
  88. EndFunc
复制代码
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2026-9-25 08:03 , Processed in 0.064202 second(s), 24 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表