设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13595|回复: 3

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

  [复制链接]
发表于 2015-6-11 09:57:59 | 显示全部楼层 |阅读模式
5仿真币
如图,需要每次运行某段程序后,在表格的第三列中随机插入1~10不重复的10个数字,请问程序怎么写?
附件: 您需要 登录 才可以下载或查看,没有帐号?注册
 楼主| 发表于 2015-6-11 16:52:56 | 显示全部楼层
zsp643295840 发表于 2015-6-11 11:22 ' ~0 i, C$ i. {, T' \  F0 Y2 e
再来个简洁版的, B) e0 p! X9 P
is
* I' ^+ q( h& w$ S        i,j,num,val:integer;
* M7 i- N' `: q$ l
非常感谢,可是程序上的obj.delete;这段话会把表格其他的数据都删除了,能只删除表格第3列的数据吗?
1 _! j) s9 Z5 E, ]另外        你可以帮我解答下程序里的疑问吗?我找不出书本可以学习这些语句
; ?/ {" R9 ?6 ^/ @) Q        for i:=1 to num loop
* u" T' p6 j& x) h2 {0 Y! s4 \                isrepeat:=true;
) b& O0 t4 U3 E* |+ }                repeat7 A5 ?7 F. ?4 g( Z# k
                        val:=z_uniform(1,1,num+1);: k; |- C. ]% G2 Q
                        obj.cursorx:=3;     这句和下句用法?我知道跟去重有关,可以不知道为什么这么用,为什么值为3和1
1 E# t, F* u5 x# L, q1 l                        obj.cursorx:=1;8 S5 z" N. W4 X2 G9 w$ e8 I
                        if not obj.find({3,1}..{3,num},val) then
( A) j# G$ c: K6 v& |# y3 S                                obj[3,i]:=val;+ j0 j% J& r8 T! w+ u" B. w
                                isrepeat:=false;8 V2 P7 G4 O# b$ h8 Q+ T
                        end;
0 ?+ z6 X# L7 h! {9 u1 Q5 ~                until not isrepeat;% k/ L! h% j* `. O" Y8 r
        next;
5 }3 f- @+ V' B6 X9 A: w* s# G
发表于 2015-6-11 17:10:56 | 显示全部楼层
taoyifei2000 发表于 2015-6-11 16:51
  J0 q1 B( O0 q5 \/ Q7 x; E# n纯交流 # B- h" |. N: q) {$ J% O
! N9 m7 e5 U9 R4 D7 ]0 `  o6 p
这个程序没问题,但是效率是需要考虑的,尤其是问题规模大的时候,repeat的时候会有很多无用 ...

; h6 t8 Q8 Q& T" S厉害!!!
 楼主| 发表于 2015-6-12 16:01:31 | 显示全部楼层
zsp643295840 发表于 2015-6-11 17:02 * i1 K$ Q& ~: o% x
可以只删除第三列path.delete({3,1}..{3,*});
( X) ~! z7 N/ E3 m至于cursor的问题,建议F1查看帮助
0 H) c9 o4 @! ^2 d7 uPS:建议采用4楼的方法 ...

: `5 z0 d7 v9 q8 G' ~! F" ]好的,非常感谢,收获很多
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-7-4 11:47 , Processed in 0.018612 second(s), 13 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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