设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10144|回复: 3

[求助] 急求,简单问题想不出来

  [复制链接]
发表于 2015-6-11 09:57:59 | 显示全部楼层 |阅读模式
5仿真币
如图,需要每次运行某段程序后,在表格的第三列中随机插入1~10不重复的10个数字,请问程序怎么写?
附件: 您需要 登录 才可以下载或查看,没有帐号?注册
 楼主| 发表于 2015-6-11 16:52:56 | 显示全部楼层
zsp643295840 发表于 2015-6-11 11:22
8 K1 K" ]6 w, |) J! ^再来个简洁版的
# o$ ]6 ~. Y6 Vis/ X8 u+ G2 _/ Z& \
        i,j,num,val:integer;
/ J/ I6 V5 ^2 H, [
非常感谢,可是程序上的obj.delete;这段话会把表格其他的数据都删除了,能只删除表格第3列的数据吗?0 J7 E- y3 d! {9 i
另外        你可以帮我解答下程序里的疑问吗?我找不出书本可以学习这些语句2 }% Y/ M, t! n
        for i:=1 to num loop7 P, d3 B6 g4 u. b/ m5 o2 v3 b
                isrepeat:=true; 4 e# F* P. I! O8 z* c
                repeat
1 E7 t0 X0 ?$ c; A! |9 z                        val:=z_uniform(1,1,num+1);# w& B; z3 X5 z7 c  ?. e  Y! N+ ]( U
                        obj.cursorx:=3;     这句和下句用法?我知道跟去重有关,可以不知道为什么这么用,为什么值为3和1
( m4 a5 {+ @7 d0 n6 o: r9 ^8 b7 r                        obj.cursorx:=1;# W3 t4 x. e2 D4 r
                        if not obj.find({3,1}..{3,num},val) then
- T9 w- a$ S  a6 |                                obj[3,i]:=val;# |* K5 X  e- ?1 {6 t2 j
                                isrepeat:=false;  |+ D! d! C% v9 P3 Y! d
                        end;
- y2 e: Y1 m# L8 C5 [/ R0 p+ E                until not isrepeat;
9 g0 U4 n* o8 h5 [/ V        next;
1 k" c9 |4 T6 v9 }/ B+ ?
发表于 2015-6-11 17:10:56 | 显示全部楼层
taoyifei2000 发表于 2015-6-11 16:51 % r: ]) X' j3 l1 U0 Q3 z: j
纯交流 $ C1 g' v5 Z8 s3 \+ b
0 h8 H( l9 W- J6 f
这个程序没问题,但是效率是需要考虑的,尤其是问题规模大的时候,repeat的时候会有很多无用 ...

7 [2 t0 t; j0 L6 y1 H0 [厉害!!!
 楼主| 发表于 2015-6-12 16:01:31 | 显示全部楼层
zsp643295840 发表于 2015-6-11 17:02
' b9 _4 m) d$ J$ m% t! D: E可以只删除第三列path.delete({3,1}..{3,*}); * ?# l9 `7 i, M2 f% f/ Y
至于cursor的问题,建议F1查看帮助
: Q/ u5 T: ]+ c/ [& ZPS:建议采用4楼的方法 ...

5 M0 X% B% N3 s# F8 ], z& Q+ I好的,非常感谢,收获很多
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2024-5-16 15:20 , Processed in 0.014978 second(s), 13 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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