d010:盈数、亏数和完全数
生活随笔
收集整理的這篇文章主要介紹了
d010:盈数、亏数和完全数
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題目:
對一個正整數N而言,將它除了本身以外所有的因子加起來的總和為S,如果S>N,則N為盈數,如果S<N,則N為虧數,而如果S=N,則N為完全數(Perfect Number)。例如10的因子有1、2、5、10,1 +2+5=8<10,因此10為虧數,而12的因子有1、2、3、4、6、12,1+2+3+4+6=16>12,因此12為盈數。至于6的因子有1、2、3、6,1+2+3=6,所以6是完全數(它也是第一個完全數)。
現在請你寫一個程序,輸入一個正整數N,然后印出它是盈數、虧數還是完全數。
所以,這題的思路是:定義s=0.
把這個數和所有小于它的數mod,是0的話s=s+i.
代碼:
1 #include <iostream> 2 using namespace std; 3 int main(){ 4 int a,i=1; 5 while(cin>>a){ 6 int s=0; 7 for(i=1;i<a;i++){ 8 if(a%i==0) s+=i; 9 } 10 if(s<i) cout<<"虧數"<<endl; 11 if(s==i) cout<<"完全數"<<endl; 12 if(s>i) cout<<"盈數"<<endl; 13 } 14 return 0; 15 }
?
轉載于:https://www.cnblogs.com/tushukai/p/7276987.html
總結
以上是生活随笔為你收集整理的d010:盈数、亏数和完全数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 个性签名坚强
- 下一篇: 元气骑士角色试玩券怎么用?