VB程序:利用随机函数产生100个10~99之间的随机整数,找出其中的素数,并将这些素数求和。 VB利用随机函数Rnd生成10个10-99的整数,并计算其中...

\u5728vb\u4e2d\u5229\u7528\u968f\u673a\u51fd\u6570\u4ea7\u751f100\u4e2a10\uff5e99\u4e4b\u95f4\u7684\u968f\u673a\u6574\u6570\uff0c\u627e\u51fa\u5176\u4e2d\u7684\u7d20\u6570\uff0c\u5e76\u5c06\u8fd9\u4e9b\u7d20\u6570\u6c42\u548c\u3002

\u6b63\u597d\u5199\u8fc7\u8fd9\u4e2a\u54e6\uff0c\u4e5f\u7ed9\u4f60\u597d\u5566

\u4ee5\u4e0b\u4ee3\u7801\u4e0d\u9700\u8981\u4efb\u4f55\u63a7\u4ef6

Private Sub Form_Activate()
Dim a(1 To 100) As Integer, prime(1 To 100) As Integer, np As Integer, sp As Integer
'a\u6570\u7ec4\u5b58\u653e100\u4e2a\u968f\u673a\u6574\u6570\uff0cprime\u6570\u7ec4\u5b58\u653e\u7d20\u6570\uff0cnp\u5b58\u653e\u7d20\u6570\u4e2a\u6570\uff0csp\u5b58\u653e\u7d20\u6570\u603b\u548c
Randomize
np = 0
sp = 0
Print "100\u4e2a\u968f\u673a\u6574\u6570\u4e3a"
For i = 1 To 100
a(i) = 10 + Int(90 * Rnd)
Print a(i);
If i Mod 10 = 0 Then Print
If isprime(a(i)) Then
np = np + 1
prime(np) = a(i)
sp = sp + a(i)
End If
Next
Print

Print "\u5305\u542b\u7684\u7d20\u6570\u4f9d\u6b21\u4e3a"
For i = 1 To np
Print prime(i);
If i Mod 10 = 0 Then Print
Next
Print
Print "\u7d20\u6570\u4e2a\u6570\u4e3a"; np; "\uff0c\u7d20\u6570\u603b\u548c\u4e3a"; sp

End Sub

Function isprime(ByVal Num As Integer) As Boolean '\u5224\u65ad\u662f\u5426\u4e3a\u7d20\u6570\u7684\u51fd\u6570
If Num < 2 Then isprime = False: Exit Function

Dim i As Integer

For i = 2 To Sqr(Num)
If (Num Mod i) = 0 Then
isprime = False
Exit Function
End If
Next i

isprime = True
End Function

1\u3001\u9996\u5148\uff0c\u6211\u4eec\u7ed9\u4e3b\u51fd\u6570\u5148\u5b9a\u4e00\u4e2a\u51fd\u6570\u3002

2\u3001\u7136\u540e\u6211\u4eec\u7f16\u5199For\u5faa\u73af\u8bed\u53e5\u3002

3\u3001\u7136\u540e\u6211\u4eec\u7f16\u5199\u8f93\u51fa\u8bed\u53e5\u53ca\u8303\u56f4\u3002

4\u3001\u7136\u540e\u6211\u4eec\u5f00\u59cb\u8fd0\u884c\u6d4b\u8bd5\u3002

5\u3001\u8fd9\u53e5\u8b66\u544a\u6ca1\u5173\u7cfb\uff0c\u5982\u679c\u4e0d\u60f3\u770b\u5230\u53ef\u4ee5\u6dfb\u52a0\u8c03\u7528\u6570\u5b66\u51fd\u6570\u3002

6\u3001\u8fd9\u65f6\u6211\u4eec\u4fbf\u53ef\u4ee5\u770b\u5230\u6548\u679c\u4e86\u3002

下面是我给你写的程序,需要添加四个文本框,三个按钮,两个标签,其中文本框Text1和Text2的Multiline属性设置成true,ScrollBars属性可以设置成2或者不用设置。你要是对程序有什么疑问也可以留个QQ,我把工程和窗体文件发给你。

'定义全局数组、变量
Dim s(1 To 100) As Integer, t(1 To 100) As Integer, n%

'结束程序
Private Sub Command3_Click()
Unload Me
End Sub

Private Sub Form_Load()
Randomize
End Sub

'产生100个10-99的随机整数并存放在数组s中
Private Sub Command1_Click()
Dim i%
Text1 = ""

For i = 1 To 100
s(i) = 89 * Rnd + 10
Next

For i = 1 To 100
Text1 = Text1 & s(i) & " "
If i Mod 10 = 0 Then
Text1 = Text1 + vbCrLf + vbCrLf
End If
Next

End Sub

'显示全部素数以及个数并求和
Private Sub Command2_Click()
Dim sum%
Text2 = ""

For i = 1 To 100
SS (i)
Next

For i = 1 To n
Text2 = Text2 & t(i) & " "
sum = sum + t(i)
If i Mod 10 = 0 Then
Text2 = Text2 + vbCrLf + vbCrLf
End If
Next

Text3 = n
Text4 = sum
n = 0

End Sub

'判断素数子过程
Public Sub SS(k As Integer)
Dim i As Integer

If s(k) < 1 Or s(k) = 1 Then
GoTo over
End If

For i = 1 To s(k) - 2
If s(k) Mod (i + 1) = 0 Then
GoTo over
End If
Next

n = n + 1
t(n) = s(k)
over:

End Sub

请参考~~

  • vb缂栧啓绋嬪簭,鍒╃敤闅忔満鍑芥暟浜х敓骞舵樉绀10 涓1~100 涔嬮棿鐨勯殢鏈烘暣鏁板苟鎵惧嚭杩...
    绛旓細Private Sub Command1_Click() Dim a(10) As Integer Randomize Max = 1 For i = 1 To 10 a(i) = 1 + Int(Rnd * 100) Print a(i); If a(i) > a(Max) Then Max = i Next i Print Print "a("; Max; ")="; a(Max)End Sub ...
  • vb棰,鐢ㄩ殢鏈哄嚱鏁扮敓鎴鍖呭惈10涓袱浣嶆暣鏁扮殑涓缁存暟缁,姹傝繖10涓暟鐨勬渶澶у...
    绛旓細鐢熸垚鐨勬暟缁勪负73 58 62 36 37 79 11 78 83 73 鎺掑簭鍚庣殑鏁扮粍涓83 79 78 73 73 62 58 37 36 11 璇ユ暟缁勫厓绱犲悇涓厓绱犵殑鍜屾槸 590 鏈澶у厓绱犳槸 83 鏈灏忓厓绱犳槸 11
  • vb缂栧啓绋嬪簭,灏鍒╃敤闅忔満鍑芥暟浜х敓鐨10涓笉澶т簬100鐨勬暣鏁颁繚瀛樺湪鏁扮粍涓...
    绛旓細Dim aver As Single '瀹氫箟aver鏀惧钩鍧囧 sum = 0 max = 0 min = 100 Randomize For i = 1 To 10 '鐢熸垚闅忔満鏁瀛樺叆鏁扮粍锛屽苟姹傚嚭鍜屻佹渶澶у笺佹渶灏忓 a(i) = Int(Rnd * 100 + 1)sum = sum + a(i)Print a(i)If a(i) > max Then max = a(i)If a(i) < min Then ...
  • 璁$畻鏈VB涓,鍒╃敤闅忔満鍑芥暟浜х敓10涓10-100鐨勯殢鏈烘暟,骞跺皢鍏惰祴鍊肩粰鏁扮粍a...
    绛旓細Private Sub Command1_Click() Dim a(10) As Integer Randomize For i = 1 To 10 a(i) = Int(Rnd() * 91) + 10 Print a(i); s = s + a(i) Next i Print Print "骞冲潎鍊="; s / 10End Sub
  • 鍦VB涓,鍒╃敤闅忔満鍑芥暟浜х敓 10涓 1---100 涔嬮棿鐨勯殢鏈烘暣鏁,鎵惧嚭鍏朵腑鑳借...
    绛旓細= SDA End If Next JNext IText1.Text = Text1.Text & "鐢熸垚鐨20涓闅忔満鏁帮細" & vbCrLfFor I = 1 To 20If AA(I) < 10 ThenText1.Text = Text1.Text & "0" & AA(I) & Space(3)ElseText1.Text = Text1.Text & AA(I) & Space(3)End IfIf I Mod 10 = 0 ThenTex...
  • VB绋嬪簭璁捐,鐢ㄩ殢鏈哄嚱鏁颁骇鐢10涓50浠ュ唴(鍖呮嫭50)鐨勯殢鏈烘暣鏁板瓨鍏ヤ竴缁存暟缁...
    绛旓細Private Sub Command1_Click()  Randomize  Dim a(9) As Integer, Max As Integer  Dim k As Integer, i As Integer  Dim t As Integer  Max = 0  For i = 0 To 9    a(i) = Int(Rnd * 51)    Print a(i);&#...
  • vb绋嬪簭閫氳繃闅忔満鍑芥暟鐢熸垚10涓鏁存暟,瀛樻斁鍦ㄦ暟缁勪腑,鐒跺悗鏌ユ壘杩10涓暟...
    绛旓細Private Sub Command1_Click()Dim a(10) As Integer Randomize j = 1 Print "浜х敓鐨10涓鏁鏄"For i = 1 To 10 a(i) = 1 + Rnd * 100 If a(i) < a(j) Then j = i Print a(i);Next i Print Print "鏈灏忔暟鏄"; j; "涓,"; a(j)End Sub ...
  • vb鍒╃敤闅忔満鍑芥暟浜х敓10涓袱浣嶆暟绱犳暟,瀛樺埌鏁扮粍a涓,瑕佹眰鏁扮粍鍏冪礌浜掍笉鐩稿悓...
    绛旓細Dim a(10), x As Integer Dim str As String = "" Dim di As Boolean = True Dim n As Integer For i = 1 To 10 Do Do n = Int(Rnd() * 1000 + 10) Loop Until IsSushu(n) If i > 1 Then For x = 1 To i - 1 ...
  • vb缂栫▼棰,鐢ㄩ殢鏈哄嚱鏁颁骇鐢10涓50浠ュ唴鍖呮嫭50鐨勯殢鏈烘暣鏁板瓨鍏ヤ竴鍫嗘暟缁?_鐧 ...
    绛旓細Private Sub Command1_Click()Dim a(10) As Integer Randomize Print "浜х敓鐨闅忔満鏁鏄細"For i = 1 To 10 a(i) = Int(Rnd * 51)Print a(i);Next i Print x = CInt(InputBox("璇疯緭鍏ヨ鏌ユ壘鐨勬暟锛"))Print "瑕佹煡鎵剧殑鏁版槸锛"; x n = 0 For i = 1 To 10 If x = a(i) ...
  • vb 鍒╃敤闅忔満鍑芥暟浜х敓10涓1~100涔嬮棿鐨勯殢鏈烘暟,鏄剧ず鍑烘渶澶у兼渶灏忓,骞冲潎...
    绛旓細a(i) = Int(Rnd * 100) + 1 arg = arg + a(i) If i = 0 Or a(i) > max Then max = a(i) If i = 0 Or a(i) < min Then min = a(i) Print a(i);NextPrintPrint "鏈澶у硷細"; maxPrint "鏈灏忓硷細"; minPrint "骞冲潎鍊硷細"; arg / 10End Sub ...
  • 扩展阅读:vb中生成不重复随机数 ... vb随机数生成方法代码 ... vb随机函数程序怎么写 ... vb产生n个随机数 ... vb产生10个1-100的随机数 ... vba产生随机数的函数 ... vb随机函数int rnd范围 ... vb生成1到100的随机数 ... vb随机数的代码编写 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网