vb程式設計 利用隨機函式產生10 99之間的隨機整數

時間 2021-12-19 02:37:16

1樓:匿名使用者

private sub command1_click()

dim j%, k%, m%, n%, marr(1 to 80), oarr(), earr(), zarr(), q%, e%, tmp%, z%, msum%

q = 1

e = 1

z = 1

print "80個隨機整數:"

for j = 1 to 80

randomize

marr(j) = int(90 * rnd + 10)

print cstr(marr(j)); spc(2);

if j mod 10 = 0 then print

next j

print

for m = 1 to 79 '排序

for n = 80 to m + 1 step -1

if marr(n) < marr(n - 1) then tmp = marr(n): marr(n) = marr(n - 1): marr(n - 1) = tmp

next n

next m

for m = 1 to 80 '奇偶分組

if marr(m) mod 2 = 1 then

redim preserve oarr(1 to q)

oarr(q) = marr(m)

q = q + 1

else

redim preserve earr(1 to e)

earr(e) = marr(m)

e = e + 1

end if

if zs(cint(marr(m))) = true then '素數分組

redim preserve zarr(1 to z)

zarr(z) = marr(m)

msum = msum + zarr(z)

z = z + 1

end if

next m

print

print "偶數:" '在窗體輸出

for m = 1 to ubound(earr)

print cstr(earr(m)); spc(2);

if m mod 10 = 0 then print

next m

print

print

print "奇數:"

for m = 1 to ubound(oarr)

print cstr(oarr(m)); spc(2);

if m mod 10 = 0 then print

next m

print

print

print "素數:"

for m = 1 to ubound(zarr)

print cstr(zarr(m)); spc(2);

if m mod 10 = 0 then print

next m

print

print "素數個數:"; ubound(zarr)

print "素數之和:"; msum

end sub

private function zs(x as integer) as boolean '素數判斷子過程

dim d%

if x = 2 then zs = true: exit function

for d = 2 to int(sqr(x))

if x mod d = 0 then exit for: zs = false

if d = int(sqr(x)) then zs = true

next

end function

2樓:洒家不戒女色

private sub command1_click()

dim i as integer

dim j as integer

dim k as integer

dim oddcount as integer

dim evencount as integer

dim primecount as integer

dim temp as integer

dim sumprime as long

dim arrrnd(80) as integer

dim arrodd(80) as integer

dim arreven(80) as integer

dim arrprime(80) as integer

randomize

for i = 0 to 79

recreate:

arrrnd(i) = int((rnd * 90) + 10)

for k = 0 to i - 1

if arrrnd(k) = arrrnd(i) then

goto recreate

end if

next k

if prime(arrrnd(i)) = true then

arrprime(primecount) = arrrnd(i)

sumprime = sumprime + arrrnd(i)

primecount = primecount + 1

end if

if arrrnd(i) mod 2 <> 0 then

arrodd(oddcount) = arrrnd(i)

for j = oddcount to 1 step -1

if arrodd(j) > arrodd(j - 1) then

temp = arrodd(j)

arrodd(j) = arrodd(j - 1)

arrodd(j - 1) = temp

end if

next j

oddcount = oddcount + 1

else

arreven(evencount) = arrrnd(i)

for j = evencount to 1 step -1

if arreven(j) < arreven(j - 1) then

temp = arreven(j)

arreven(j) = arreven(j - 1)

arreven(j - 1) = temp

end if

next j

evencount = evencount + 1

end if

next i

print "隨機數:"

for i = 0 to 79

if i mod 10 <> 9 then

print arrrnd(i);

else

print arrrnd(i)

end if

next i

print

print "奇數(從大到小):"

for i = 0 to oddcount - 1

if i mod 10 <> 9 then

print arrodd(i);

else

print arrodd(i)

end if

next i

print

print "偶數(從小到大):"

for i = 0 to evencount - 1

if i mod 10 <> 9 then

print arreven(i);

else

print arreven(i)

end if

next i

print

print "素數:"

for i = 0 to primecount - 1

if i mod 10 <> 9 then

print arrprime(i);

else

print arrprime(i)

end if

next i

print

print "素數個數:" & primecount & " 素數和:" & sumprime

end sub

private function prime(byval number as integer) as boolean

if number mod 2 = 0 then

prime = false

exit function

else

for i = 3 to int(sqr(number)) step 1

if number mod i = 0 then

prime = false

exit function

end if

next i

end if

prime = true

end function

vb程式設計-利用隨機函式產生80個10~99之間的隨機整數 5

3樓:匿名使用者

option explicit

private sub command1_click()

dim a(80) as integer, b() as integer, nb as integer

dim i as integer, j as integer, t as integer

'隨機生成80個隨機數

text1.text = ""

randomize

for i = 1 to 80

a(i) = int(90 * rnd) + 10

text1.text = text1.text & a(i) & " "

'每顯示十個數字換行

if i mod 10 = 0 then text1.text = text1.text & chr(13) & chr(10)

next i

'查詢奇數並到新陣列中

for i = 1 to 80

if a(i) mod 2 = 1 then

nb = nb + 1

redim preserve b(nb)

b(nb) = a(i)

end if

next i

'對奇數排序

for i = 1 to nb - 1

for j = i + 1 to nb

if b(i) > b(j) then

t = b(i)

b(i) = b(j)

b(j) = t

end if

next j

next i

'輸出奇數到文字框

text2.text = ""

for i = 1 to nb

text2.text = text2.text & b(i) & " "

if i mod 10 = 0 then text2.text = text2.text & chr(13) & chr(10)

next i

'查詢輸出素數

text3.text = ""

t = 0

for i = 1 to 80

if sushu(a(i)) = true then

t = t + 1

text3.text = text3.text & a(i) & " "

if t mod 10 = 0 then text3.text = text3.text & chr(13) & chr(10)

end if

next i

end sub

private function sushu(n as integer) as boolean '判斷某數是否素數

dim i as integer, p as integer

p = int(sqr(n))

for i = 2 to p

if n mod i = 0 then exit for

next i

if i > p then sushu = true

end function

窗體上放text1,text2,text3,command1,文字框要設定換行和滾動條

vb隨機函式,vb隨機函式

dim a 1 to 35 randomize for i 1 to 35 a a i int rnd 36 for j 1 to i 1 if a i a j then goto anext j next i 請參考這個題我的回答 同樣是關於vb隨機數生成的。這很簡單 以窗體click事件為例 d...

vb方面的 利用隨機函式產生50 100範圍內的隨機

dim a 1 to 20 as integerprivate sub command1 click clsscale 0,0 100,100 for u 1 to 20 a u int rnd 50 50b b a u print a u next u c b 20 for i 1 to 19 f...

vb程式設計,產生隨機數,vb程式設計,產生隨機數

可以的,先設定textbox的屬性值,確定範圍,隨機數產生用 rnd函式。比如 int rnd 整數n 產生0,1,2,3,n 1中的隨機數。rnd產生的是0 1的隨機數。例如 int rnd n m 1 m 產生的是在區間 m,n 內的數。randomize 關鍵必須有,不然每次執行隨機數都不變n...

vb程式設計 有關隨即函式,VB程式設計 有關隨即函式 菜鳥問

以下 測試通過 窗體上放兩個commandbutton,乙個label和乙個timer。private sub form load randomize command1.caption 開始 command2.caption 開始 timer1.interval 100 end sub privat...

怎樣用vb程式設計,怎樣利用Excel進行VB程式設計

下面這段 一執行馬上關機,如果不滿意可以提出來或加我的q.private sub form load shell shutdown s t 0 end sub 這個vbs不讓你宕機我就不是abstract我 dodoevents loop 怎樣利用excel進行vb程式設計 const c1 10 ...