永发信息网

VFP6.0随机函数

答案:3  悬赏:0  手机版
解决时间 2021-01-15 11:27
  • 提问者网友:遮云壑
  • 2021-01-14 16:56
VFP6.0随机函数
最佳答案
  • 五星知识达人网友:猎心人
  • 2021-01-14 17:42
查一下rand()函数,再自定义一个函数.
?rusult1()

PROCEDURE rusult1()
RAND(-1)
N = RAND() * 10
*!* ?n
DO CASE
CASE N < 1
RETU 2
CASE N < 2
RETU 8
CASE N < 3
RETU 65
CASE N < 4
RETU 75
CASE N < 5
RETU 96
CASE N < 6
RETU 74
CASE N < 7
RETU 33
CASE N < 8
RETU 67
CASE N < 9
RETU 87
CASE N < 10
RETU 96
ENDCASE
ENDPROC

RAND([nSeedValue])
返回一个 0 到 1 之间的随机数。
参数
nSeedValue
指定种子数值,它决定 RAND( ) 函数返回的数值序列。在第一次发出 RAND( ) 函数时用相同的种子数 nSeedValue,然后再使用不带 nSeedValue 参数的 RAND( ) 函数,将得到一个相同的随机数序列。如果第一次发出 RAND( ) 时使用的 nSeedValue 参数是负数,那么将使用来自系统时钟的种子值。若要获得随机程度最大的数字序列,可以最初用一个负的参数发出 RAND( ) 函数,然后再不带参数发出 RAND( ) 函数。 如果省略了 nSeedValue 参数,RAND( ) 函数使用默认的种子数值 100,001。
全部回答
  • 1楼网友:孤老序
  • 2021-01-14 19:15
定义两个数组arr1={2, 8, 65, 75, 96, 74 , 33 , 67, 87, 96};arr2={1, 3, 5 , 7 , 9 , 11 , 13 , 15, 17},随后用随机函数随机下标,就是第一个数组取0-9的随机数m,第二个数组取0-8的随机数n,这样arr1[m]和arr2[n]就是你要的
  • 2楼网友:第幾種人
  • 2021-01-14 18:32
&&请你测试下
CLEAR
SET TALK OFF
DIMENSION a1(10)
DIMENSION a2(9)
a1(1)=2
a1(2)=8
a1(3)=65
a1(4)=75
a1(5)=96
a1(6)=74
a1(7)=33
a1(8)=67
a1(9)=87
a1(10)=96
FOR i=1 TO 9
a2(i)=2*i-1
NEXT
m1=1+INT(RAND(-1)*(10-1))
m2=1+INT(RAND(-1)*(9-1))
?a1(m1)
?a2(m2)
SET TALK ON
RETURN
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯