用vb证明一个定理

来源:百度知道 编辑:UC知道 时间:2024/06/11 09:07:15
用vb编写,任意一个自然数N的立方等于N个连续奇数相加!
效果:输入任意一个自然数x,求出这些连续的奇数并输出!
如:
1*1*1=1
2*2*2=3+5
3*3*3=7+9+11
4*4*4=13+15+17+19
老师让写出求1-1000内的任意自然数的这些奇数,我头都大了,高手帮下忙!
1楼的朋友,就是不知道这些连续的奇数是哪些,如果是n为14的话,那么就有14个奇数相加了,老师提示说是,让计算机先算1+3+5……,每次都从1开始加,用循环语句,如果不和输入的数N的3次方相等的话,就继续从3开始加,知道相等,退出循环,然后输出这些连续的奇数!我不知道该怎么写!

何必那么麻烦,下面的代码就可以实现
Private Sub Command1_Click()
Dim a As Long , i As Integer, c As Long, str As String
a = InputBox("请输入一个整数")
str = a & "×" & a & "×" & a & "=" & (a - 1) * a + 1
For i = 1 To a - 1
c = (a - 1) * a + 1 + i * 2
str = str & "+" & c
Next i
Print str
End Sub

很简单嘛,只要N的立方除以N(何必那么费事,直接N的平方不就行了),就得到了N个奇数的平均数,那么N^2-(N-1)就是第一个奇数,然后每次加2并输出,直到加(N-1)次为止就行了。

你倒过来想 就方便了

4*4*4=19++17+15+13

你先算出来 一个数 比如 4*4*4 就是 64
然后求他 做大的 奇数 有了最大奇数 就有 次大奇数 和其他奇数
然后把 循环 相加 =就成立 大鱼小鱼 就不成立
然后就可以算了啊
用循环
成立的显示出来 不成立扔掉