24小时热门版块排行榜    

CyRhmU.jpeg
查看: 972  |  回复: 5
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

张生生zsc

新虫 (初入文坛)

[求助] ANSYS中使用APDL语言建模问题已有2人参与

编程的目的是要分析导电胶的受热时应力和位移变化。导电胶中有球形的导电颗粒,周围是环氧树脂。建模时是在10x10x10的立方体内随机选取一个整数坐标来作为圆心,0.5为半径画球,以此类推循环一百次在立方体内得到100个小球。程序如下:
/prep7
*DO,i,1,100
*SET,Ai,RAND(1,1000)
*SET,B,NINT(Ai)
C=MOD(B,100)
D=MOD(C,10)
Z=(B-C)/100
Y=(C-D)/10
X=D
wplane,X,Y,Z,X+1,Y,Z,X,Y+1,Z
sph4,,,0.5
*ENDDO
现在面临的问题是这1-1000中随机产生的100个数之中不能保证互不重复,也就是说随机数选取的时候可能多次重复选同一个数。
有没有方法解决这个问题,如果需要用到C语言的话请在回复时把代码写出来。
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

坦克手

新虫 (初入文坛)

同问,我用rand命令,但是有重复,要怎么解决啊
6楼2018-04-23 20:42:35
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 6 个回答

mxwq

新虫 (正式写手)

你是想用10个金币让别人帮你编个程序嘛!?

发自小木虫Android客户端
2楼2015-11-26 22:45:35
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

shgao20

专家顾问 (职业作家)

【答案】应助回帖

感谢参与,应助指数 +1
将:
    *SET,Ai,RAND(1,1000)
  改成:
    *SET,Ai,RAND(i,1000+i)  或 *SET,Ai,RAND(1,i*1000) 或......
  试试。
3楼2015-11-27 09:03:22
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

mxwq

新虫 (正式写手)

【答案】应助回帖

感谢参与,应助指数 +1
你得写一个判断语句和循环语句组合,还要对已经产生的数存放在数组里…这是这一类免重编程的常识,编过程序的都这么来,但是也挺麻烦…楼上的恐怕不是你要的!一个是:产生i-i+1000的随机数,如果i=5时,Ai(Ai是一个变量,不会是A2之类的一百个不同变量!)先产生100.508,i=6时产生i-i+1000(即6-1006)的随机数,还是可能产生100.106这样,取整还都是100!第二个1-i*1000也有类似问题…

发自小木虫Android客户端
4楼2015-11-27 11:04:24
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见