VB程序设计-利用随机函数产生80个10~99之间的随机整数

作者&投稿:调钱 (若有异议请与网页底部的电邮联系)
VB程序设计-利用随机函数产生80个10~99之间的随机整数~

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,文本框要设置换行和滚动条

课本的题目,自己动脑筋想吧,你可以问些如何排序的问题,不要直接把题目搬上来。

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

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


程序设计:编写程序,输入三个整数,利用三目运算符(条件表达式)输出最...
include <stdio.h> int main(){ int a,b,c;scanf("%d%d%d",&a,&b,&c);printf("%d\\n",a<b?(a<c?a:c):(b<c?b:c));return 0;}

vc程序设计(遗传算法)
b[i]=(4*(random(10001)\/10000.0)+1)*2.0*pi\/fxmax; c[i]=2.0*pi*(random(10001)\/10000.0...2011-01-23 求用VC++编程旋转风车的程序设计报告!! 2012-05-13 求利用遗传算法实现矩形件排样 的

VB程序设计 简答题
Dim x(100)Private Sub Form_click() dim I as long For I = 0 To 99 x(I) = Rndz(0, 99)'生成随机数字,并赋值给数组 If x(I) < 50 Then Print x(I)'输出小于50的 NextEnd SubPrivate Function Rndz(a As Long, b As Long) Randomize Rndz = Int((a...

急!关于VB,简单的程序设计
所以设计递归过程时,一定要考虑过程中有终止的条件和终止时的值或某种操作,而且每递归调用一次,其中的参数要向终止方向收敛,否则就会产生栈溢出。六、常用控件常见错误和难点分析1.遗漏对象名称在VB程序设计时,初学者常犯的一个错误是遗漏对象名称,特别是在使用列表框时。例如,如果要引用列表框(List1)中当前选定的...

vb 程序设计
界面上只需要3个Label Label1 Label2 Label3 自动回行设为true 每行长度允许范围为40 (= 数字(3字符) + 空格(1字符))通常情况下 宋体, 9pt 的话 设长255 宽90 以下是代码,直接套Form_load事件就可以了 Dim i, j, m, n, lowB, highB, tmpNum As Integer Dim myArray(0 To 59) ...

vb程序设计题,请高手解答
为了使大量的数据在输出时看得清楚,我们在运行窗体上设置了一个文本框,并把文本框的属性MultiLine设为True,Scorllbars设为2(带竖直滚动条)。Vb程序代码如下:Private Sub Form_Click()Dim a '定义了一个可变类型的数组 a = Array(1, 3, 5, 7, 9, 11)Dim b b = Array(2, 4, 6...

设计一个程序,随机产生100个同学的成绩和相应的学号存入数组,输出100个...
import java.util.Random;public class StudentX { private static int[] score = new int[100]; private static int[] no = new int[100]; public static void main(String[] args) { ReadDat(); aort_1(); print_1(); } \/\/产生随机数 public static void...

设计一个程序,利用指针来计算两个浮点数的最大值,并利用指针来交换这两...
){ float n,m,*a,*b; scanf("%f%f",&n,&m); a=&n; b=&m; printf("max:%f\\n", (*a>*b)?*a:*b); swapf(a,b); printf("swapped:%f,%f\\n",*a,*b); return 0; } 程序及运行红果如图。其中,3.6,5.2是输入的两个浮点数 ...

VB程序设计题
Dim t As String, f As String, h As Long, n As Long, m As Long, b() As String, s As String, k As Long h = FreeFile f = "c:\\mydir\\ran.txt"If Dir(f) = "" Then MsgBox "文件不存在,请先写入数据!", vbExclamation, "提示"Exit Sub End If h = FreeFile Open ...

vb程序设计题(最好有解答过程)
第15题..什么啊?3. C '\/\/TempVariable就是复选框的状态值,0为未选中,1为已选中,2为默认选中 5. B

龙胜各族自治县17367489688: VB程序设计 - 利用随机函数产生80个10~99之间的随机整数 -
关殷十味: Private Sub Command1_Click()Dim j%, k%, m%, n%, mArr(1 To 80), OArr(), EArr(), ZArr(), Q%, E%, tmP%, Z%, mSum%Q = 1E = 1Z = 1Print "80个随机整数:"For j = 1 To 80RandomizemArr(j) = Int(90 * Rnd + 10)Print CStr(mArr(j)); Spc(2);If j ...

龙胜各族自治县17367489688: vb中利用随机函数产生数80个10到99的随机整数后怎么弄才能每行输出10数 -
关殷十味: dim i,a,n as integer for i=1 to 80 n=n+1 a=int(rnd*90+10) randomize print a; '这里加分号才可以在一行输出10个数的 next i if n mod 10 =0 then print '这是换行的代码

龙胜各族自治县17367489688: vb利用rnd函数产生30到80的随机整数 -
关殷十味: 包含copy30和80:2113 x = Int(Rnd * 51) + 30 不包5261含410230和80:x = Int(Rnd * 49) + 31 包含30,但1653不包含80:x = Int(Rnd * 50) + 30 包含80,但不包含30:x = Int(Rnd * 50) + 31

龙胜各族自治县17367489688: vb编写一个程序,利用随机函数生成15个80~99之间的随机整数,输出其中的最大值与最小值 -
关殷十味: private sub command1_click() for i=1 to 15 randomize a=int(Rnd*20)+80 if i=1 then max=a:min=a if max<a then max=a if min>a then min=a print a; if i=7 or i=15 then print next print "最大值:"; max print "最小值:"; min end sub

龙胜各族自治县17367489688: vb问题利用随机函数产生80个10~99之间的随机整数, -
关殷十味: 我已经上机验证过了,正确. 思路: 产生80个随机数,把这80个随机数由小到大排序,然后从第1个到第80个的顺序挑选偶数,赋值给字符串s1,够10个换行 .再从第80个到第1个的顺序挑选奇数,赋值给字符串s2,同上.有一点很重要:...

龙胜各族自治县17367489688: 在vb中,利用随机函数产生10个30 - 80之间的正整数,求所有奇数之和 -
关殷十味: private sub command1_click() dim i, j, s, nb, nc, a(80), b(80), c(80) as integer for i = 1 to 80 a(i) = 99 - int(rnd * (99 - 10)) next print "随机产生的80个10~99之间的整数:" for i = 1 to 80 step 10 for j = 0 to 9 if i + j > 80 then exit for print a(i + j), next ...

龙胜各族自治县17367489688: VB利用随机函数产生80个10~99之间的随机整数,将其中的奇数按由小到大的顺序排列并输出;在产生的80个随机整数中,找出其中的素数.
关殷十味: 愁 你们咋么都问这个问题.?去看看 http://wenwen.soso.com/z/q194985481.htm Private Sub Command1_Click() Dim i As Integer, j As Integer, n As Integer, m As Integer Dim a(1 To 80) As Integer, b(1 To 80) As Integer, c(1 To 80) As Integer Dim ...

龙胜各族自治县17367489688: vb随机数问题
关殷十味: Private Sub Command1_Click()Dim i, j, s, nb, nc, nd, nn, a(80), b(80), c(80), d(8) As IntegerFor i = 1 To 80 a(i) = 99 - Int(Rnd * (99 - 10))NextPrint "随机产生的80个10~99之间的整数:"For i = 1 To 80 Step 10 For j = 0 To 9 If i + j > 80 Then Exit ...

龙胜各族自治县17367489688: vb按一个按钮随机出现1到80之间的一个整数 -
关殷十味: Private Sub Command1_Click() Randomize Text1.Text = Int(Rnd() * 80)End Sub

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网