作者Changsunche (长孙辙)
看板Visual_Basic
标题[VB6 ] 找出范围内的质数,想请各位帮忙缩短...
时间Wed Sep 30 21:12:15 2009
首先,这题目一开始是要求我去使用阵列、函数,来去写成.....
但是问题在於函数上的使用我不太会,
一开始编辑Function一直出错,所以最後还是写成一般方式.....
超级长...又凌乱,当初有问题的时候超想直接上来发问.....
但是最後还是决定先写成之後,在来发问好了...
结论...写成了!但好长..
Private Sub Command1_Click()
ReDim a(0)
x = 0
a(0) = 2
t1 = Val(Text1.Text)
For N = 3 To t1
If N = t1 Then
For i = LBound(a) To UBound(a)
If N Mod a(i) = 0 Then
GoTo L3
End If
Next
x = x + 1
ReDim Preserve a(x)
a(x) = N
GoTo L3
End If
For i = LBound(a) To UBound(a)
If N Mod a(i) = 0 Then
GoTo L1
End If
Next
GoTo L2
L1:
Next
L2:
x = x + 1
ReDim Preserve a(x)
a(x) = N
GoTo L1
L3:
For m = LBound(a) To UBound(a)
t2 = t2 & " " & a(m)
Next
MsgBox (t2)
End Sub
......有够长...超级长...但是却完成了= ="
一开始有尝试使用自订函数来设计,
但是我发现我在上面所使用到的X=X+1
设计是为了使阵列越来越大,
但如果使用函数的时候却失败了...
竟然用到,老师说的:「不重要的GoTo」
而且超级长,想要请各位帮忙写成函数,
想要了解写成函数的样子,当作学习的范本= ="
是在VB6下操作,可以的话,如果有使用到特别函数,
帮忙说明一下......学的函数不多,纯为新手而已...
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 125.228.109.38
1F:→ MOONRAKER:goto L3可改为函数,其他两处可用exit for改写 10/01 09:47
2F:推 mraaa:也可试试看递回函数吧~~ 10/01 11:00
3F:→ Changsunche:谢谢两位的回应,会继续磨练的^w^ 10/01 18:02