给一个偶数,拆成两个质数(哥德巴赫猜想)我遍的如此简浅,错在
vb.net吧
全部回复
仅看楼主
level 1
普及率😳 楼主
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim a, i, x, y As Integer
a = TextBox1.Text
For i = 2 To a - 1
x = 1
y = 1
If a Mod i = 0 Then
x = 0
end if
If a Mod a - i = 0 Then
y = 0
End If
If x = 1 And y = 1 Then
Exit For
TextBox2.Text = a & "=" & a - i
End If
Next i
End Sub
End Class
错在哪里!!!!!!!!!
2016年05月03日 15点05分 1
level 1
普及率😳 楼主
各路大神,
2016年05月03日 15点05分 2
level 1
普及率😳 楼主
改一改喽!?
2016年05月03日 16点05分 3
level 1
普及率😳 楼主
顶!
2016年05月04日 03点05分 4
level 1
普及率😳 楼主

2016年05月04日 04点05分 5
level 1
普及率😳 楼主

2016年05月04日 04点05分 6
把拆分规则说详细一点。 ---贴吧极速版 For UWP
2016年05月04日 05点05分
@企鹅骑兵 任意一个偶数,都可以拆分成两个质数相加,就是哥德巴赫猜想。 于是比如我输入a,用for语句,i从2到a-1。用a mod i 和a-i 同时都不为零。那么就拆成i和a-i了。想法还是清晰的,但是写不出来,尤其是if语句混乱了。
2016年05月04日 09点05分
@企鹅列兵 不好意思是 ,i 和 a-i 都得是质数。另外一个for j = 2 to i-1. i mod j =0 就不是质数,不是质数我设x=1.是质数x=0.同理 a-i也一样。最后x=1 ,y=1.就把i 输出来
2016年05月04日 10点05分
level 1
普及率😳 楼主
Dim a, i, j, x, y As Integer
a = TextBox1.Text
For i = 2 To a - 1
x = 1
y = 1
For j = 2 To i - 1
If i Mod j = 0 Then
x = 0
Exit For
End If
next j
For j = 2 To a - i - 1
If a - i - 1 Mod j = 0 Then
y = 0
Exit For
End If
next j
If x = 1 And y = 1 Then
Exit For
End If
TextBox2.Text = a & "=" & i
Next i
@企鹅骑兵
2016年05月04日 10点05分 7
level 1
普及率😳 楼主
Dim a, i, j, x, y As Integer
a = Val(TextBox1.Text)
For i = 2 To a - 1
x = 1
y = 1
For j = 2 To i - 1
If i Mod j = 0 Then
x = 0
Exit For
End If
next j
For j = 2 To a - i - 1
If a - i Mod j = 0 Then
y = 0
Exit For
End If
Next j
If x = 1 And y = 1 Then
Exit For
End If
TextBox2.Text = a & "=" & i & "+" & a - i
Next i
再次修正就是没有
2016年05月04日 10点05分 8
1