如何用编程将1个数分解为不重复6个数(1到30之间)之和,该理论是能够有结果的。
来源:百度知道 编辑:UC知道 时间:2024/06/29 01:51:32
终于弄出来了:用VB写的,估计你看得懂,都是basic
Private Sub Command1_Click()
Dim xt As Long
Dim xtt As Long
Dim xts As Long
xtt = Val(Text1.Text)
xts = xtt - 21
List1.Clear
xt = 0
For i6 = xts \ 6 To Min(24, xts)
For i5 = 0 To Min(25, xts - i6)
If i5 < i6 + 1 Then
For i4 = 0 To Min(26, xts - i6 - i5)
If i4 < i5 + 1 Then
For i3 = 0 To Min(27, xts - i6 - i5 - i4)
If i3 < i4 + 1 Then
For i2 = 0 To Min(28, xts - i6 - i5 - i4 - i3)
If i2 < i3 + 1 Then
For i1 = 0 To Min(29, xts - i6 - i5 - i4 - i3 - i2)
If i1 < i2 + 1 And (i1 + i2 + i3 + i4 + i5 + i6) = xts Then
List1.AddItem CStr(i1 + 1) + "+" + CStr(i2 + 2) + "+" + CStr(i3 + 3) + "+" + CStr(i4 + 4) + "+" + CStr(i5 + 5) + "+" + CStr(i6 + 6) + "=" + CStr(i1 + i2 + i3 + i4 + i5 + i6 + 21)
xt = xt + 1
End If
Next i1
End If
Next i2
End If
Next i3<