網頁

工商專區

2010年12月30日

尋找1~10000的完美數

完全數,又稱完美數或完備數,是一些特殊的自然數:它所有的真因子(即除了自身以外的因數)的和,恰好等於它本身。

例如:第一個完全數是6,它有因數1、2、3、6,除去它本身6外,其餘3個數相加,1+2+3=6,恰好等於本身。第二個完全數是28,它有因數1、2、4、7、14、28,除去它本身28外,其餘5個數相加,1+2+4+7+14=28,也恰好等於本身。後面的數是496、8128。

寫出一則程式顯示出1~10000之間的完美數



  1. public class test
  2. {
  3.     public static void main (String args [])
  4.     {
  5.         int i , j , sum , n = 10000 ;
  6.        
  7.         for( i = 2 ; i <= n ; i++ )
  8.         {
  9.             sum = 0 ;
  10.             for( j = 1 ; j < i ; j++ )
  11.             {
  12.                 if( i % j == 0 )
  13.                 {
  14.                     sum += j ;
  15.                 }
  16.             }
  17.             if( i == sum )
  18.             {
  19.                 System.out.print( i + "\n" ) ;
  20.             }
  21.         }
  22.     }
  23. }

1 則留言: