什么叫完数?
的有关信息介绍如下:
一个数如果恰好等于除它本身外的因子之和,这个数就称为"完数",也叫“完美数”。例如6=1+2+3.(6的因子是1,2,3) [编辑本段]代码 求1000以内的完数的C++语言代码如下: #include using namespace std; int main() {int n=1000; int r=0,j,i; for(i=1;i<=n;i++) {r=0; for(j=1;j int main() { int n=1000; int r,j,i; for(i=1;i 6=2(1 ) + 2(2 ) 28=2(2 ) + 2(3) + 2(4) 496=2(4) + 2(5) + ... + 2(8) 8128=2(6) + 2(7) + 2(8)+... + 2(12) 33550336=2(12) + 2(13 ) + 2(14)... + 2(24) 每一个偶完数都可以写成连续自然数之和: 6=1+2+3 28=1+2+3+4+5+6+7; 496=1+2+3+…+30+31 除6以外的偶完数,还可以表示成连续奇数的立方和(被加的项共有): 28=1(3) + 3(3) 496=1(3) + 3(3) + 5(3) + 7(3) 8128=1(3 ) + 3(3) + 5(3) + ... + 15(3) 33550336=1(3) + 3(3) + 5(3) + ... + 125(3) + 127(3) 每一个完数的所有约数(包括本身)的倒数之和,都等于2: 1/1 + 1/2 + 1/3 + 1/6 =2 1/1 + 1/2 + 1/4 + 1/7 + 1/14 + 1/28 =2 它们的二进制表达式也很有趣: (6)10 = (110)2 (28)10 = (11100)2� ====用VB编写代码如下===== Dim i As Integer Dim j As Integer Dim intSum As Integer For i = 1 To 1000 intSum = 0 For j = 1 To Int(i / 2) If i Mod j = 0 Then intSum = intSum + j Next j If intSum = i Then Print i Next i ====用PHP编写代码如下===== 求1000以内的完数的PHP语言代码如下: for($i=1;$i<=1000;$i++) { $wannum=0; for($j=1;$j<$i;$j++) {if ($i%$j==0) {$wannum+=$j;} } if($wannum==$i) echo $i.""; } ==============================================java代码如下 public class WanShu { public static void main(String[] args) { int s; for (int m = 1; m < 10000; m++) { s = 0; for (int i = 1; i < m; i++) if (m % i == 0) s = s + i; if (s == m) System.out.println(s); } } }
版权声明:文章由 去问问 整理收集,来源于互联网或者用户投稿,如有侵权,请联系我们,我们会立即处理。如转载请保留本文链接:https://www.qwenw.com/life/411523.html