vb問題 關於隨機數,一個vb問題 關於隨機數

2022-01-03 14:57:48 字數 1972 閱讀 8459

1樓:匿名使用者

放置一個label一個command然後把form的boarderstyle設定成3後貼上下面的**

dim invalue

dim arr() as integer

private sub command1_click()'產生隨機數字

randomize

dim rndnum as integerrndnum = int(rnd * invalue + 1)'判斷是否已經產生過該陣列

if arr(rndnum) <> 0 thencall command1_click

exit sub

end if

'如果沒產生過則講陣列賦值為1、在label輸出並在螢幕記錄arr(rndnum) = 1

label1.caption = rndnumprint rndnum

'判斷是否已經全部輸出過

dim rep as boolean

rep = true

for i = 1 to invalue

if arr(i) = 0 then

rep = false

i = invalue

end if

next

'如果全部輸出過則重新安裝窗體

if rep then

call form_load

end if

end sub

private sub form_load()'需要手動設定form1.borderstyle = 3invalue = inputbox("請輸入最大的整數:", "提示")

'如果點選取消,則退出

if strptr(invalue) = 0 then endif invalue <> val(invalue) thenmsgbox "不是數字"

call form_load

end if

'定義陣列賦初值,只有redim才能用變數定義動態陣列redim arr(1 to invalue) as integerfor i = 1 to invalue

arr(i) = 0

next

end sub

2樓:匿名使用者

你這個題 我以前搞過

但是太久沒摸了 忘了怎麼寫了

我去查查以前的資料

在給你答案

3樓:竹蘭濮妝

這個是我寫的,在窗體上新增一個command按鈕即可private

subcommand1_click()

dimi,

r(),

a,b,cas

integera=

inputbox("從幾開始?",

"輸入",0)b

=inputbox("到幾?",

"輸入",a+

1)c=inputbox("你想產生幾個?",

"輸入",

1)redim

r(c)

randomize

fori=0

toc-1

r(i)

=int(rnd()*(b

-a+1)

+a)next

fori=0

toc-1

print

r(i)

next

endsub

4樓:郜良御博超

private

subcommand1_click()

randomize

text3.text

=int(rnd

*(val(text2.text)

-val(text1.text))+0.5)+val(text1.text)))

''隨機*(上線-下線)+下線

''如果不用

+0.5

就永遠不會產生上限值,因為

rnd永遠》=0

&<1endsub

VB隨機數問題,VB隨機數的問題。

private sub command1 click randomize text3.text int rnd val text2.text val text1.text 0.5 val text1.text 隨機 上線 下線 下線 如果不用 0.5 就永遠不會產生上限值,因為 rnd永遠 0 1 ...

vb隨機數排序

在窗體中建立三個picture控制元件,並拉伸到適當大小,框中新增如下 執行點選窗體即可。private sub form click dim a 1 to 60 as integer,o 1 to 60 as integer,ji 1 to 60 as integer randomize num1...

關於vb時鐘的問題,關於vb時鐘的一個問題

建立一個窗體,把borderstyle屬性設為0 none,在窗體上面繪製一個timer 一個label就可以了,不用修改其他屬性。開啟 區,寫下以下 dim x1,y1 as single private sub form load me.caption me.borderstyle 0 with...