设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 20419|回复: 3

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

  [复制链接]
发表于 2015-6-11 09:57:59 | 显示全部楼层 |阅读模式
5仿真币
如图,需要每次运行某段程序后,在表格的第三列中随机插入1~10不重复的10个数字,请问程序怎么写?
附件: 您需要 登录 才可以下载或查看,没有帐号?注册
 楼主| 发表于 2015-6-11 16:52:56 | 显示全部楼层
zsp643295840 发表于 2015-6-11 11:22
: j! X' K. }. A6 N再来个简洁版的+ I& `0 z7 F/ @  N7 s5 f
is
/ S, {: [2 A0 z2 |4 p        i,j,num,val:integer;
/ l9 B& s. T$ ]2 ]
非常感谢,可是程序上的obj.delete;这段话会把表格其他的数据都删除了,能只删除表格第3列的数据吗?
# [1 D1 Q- O$ q' P; v9 |( ^7 q0 O另外        你可以帮我解答下程序里的疑问吗?我找不出书本可以学习这些语句
: z) K; Y. P9 ]        for i:=1 to num loop
* F7 L! U# d& `; y4 Z& N                isrepeat:=true; 7 g& `2 Z. |- m' m3 c7 I0 {2 B
                repeat
$ {- u/ x# C# Z" q$ b                        val:=z_uniform(1,1,num+1);
  J3 |: a9 J3 S                        obj.cursorx:=3;     这句和下句用法?我知道跟去重有关,可以不知道为什么这么用,为什么值为3和1( N) R1 n3 S. A
                        obj.cursorx:=1;
& v+ C( N1 w+ b" j                        if not obj.find({3,1}..{3,num},val) then" t. g/ ^6 p& z
                                obj[3,i]:=val;
+ N% Z  I+ y. L* j                                isrepeat:=false;/ @6 W3 S0 c0 `/ `+ W9 J: q
                        end;
6 a+ ^* E% v0 \# e                until not isrepeat;8 s( \+ R# R5 O
        next;. x5 U8 A( T* c( ]3 z, b
发表于 2015-6-11 17:10:56 | 显示全部楼层
taoyifei2000 发表于 2015-6-11 16:51
' T2 l, w3 f9 N# }6 x0 z, O! F8 j纯交流 5 w6 V9 y  o# Y
; z, n& {3 E$ @0 t
这个程序没问题,但是效率是需要考虑的,尤其是问题规模大的时候,repeat的时候会有很多无用 ...
2 l, L( ?; |+ g
厉害!!!
 楼主| 发表于 2015-6-12 16:01:31 | 显示全部楼层
zsp643295840 发表于 2015-6-11 17:02
) w0 D$ d- b3 R可以只删除第三列path.delete({3,1}..{3,*});
0 d- G2 q* S* l# k# S* r至于cursor的问题,建议F1查看帮助
3 T, @+ |4 Y2 f1 G, gPS:建议采用4楼的方法 ...
  F7 ]: H2 @1 P
好的,非常感谢,收获很多
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-15 15:14 , Processed in 0.013755 second(s), 13 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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