1-1000以內的完數
阿新 • • 發佈:2019-02-02
* Copyright (c) 2012, 煙臺大學計算機學院
* All rights reserved.
* 作 者:田宇
* 完成日期:2012 年 11月 4 日
* 版 本 號:v1.0
*
* 輸入描述: 無
* 問題描述: 無
* 程式輸出:1-1000以內所有完數
* 問題分析:
* 演算法設計:
/*一個數如果恰好等於它的因子之和,這個數就稱為“完數”。 例如6=1+2+3,再如8的因子和是7(即1+2+4), 8不是完數。程式設計找出1000以內的所有完數。 */ #include <iostream> #include<Cmath> using namespace std; int main( ) { int i,sum,c; cout<<"1-1000的完數有:"<<endl; for(i=2;i<=1000;i++) { sum=1; for(c=2;c<sqrt(i);c++) if(i%c==0) sum+=(c+i/c); if(i==sum) cout<<i<<" "; } cout<<endl; return 0; }
* 執行結果:
* 心得體會:
學C++可長見識了,頭一次知道什麼是完數、什麼是水仙花數、等等等。。。。