色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

用while循環怎么做最簡潔

老白2年前19瀏覽0評論

用while循環怎么做最簡潔?

求輸入一個正整數,判斷其是否是一個完美數,用while循環怎么做最簡潔?

完美數概念

首先你得了解什么叫”完美數“。一個數如果恰好等于除其本身外所有因子之和,這個數就稱為“完美數”。例如6=1+2+3.編程找出10000以內的所有完數。所以1不算,循環的話就得從1開始;

解題思路

從1開始至目標數減1進行循環,逐一去判斷循環數是否為目標數的因子,若是,則加總至和,最后所有數都比較完,再對和和目標數進行相等判斷,如果和等于目標數,則是完美數,否則不是;

實現

小編用C++的方式來實現,因為手邊沒有好的Java的IDE,就這個問題,主要牽涉到的就是循環邏輯處理,跟語言沒多大關系,所以C++你也能看得懂。

while循環實現

int target_num = 6 ;//換成你要輸入的數

int sum = 0 ;//用來累加因子的和

int i = 1 ;

while (i<target_num)

{

i++ ;

//判斷i是否為目標數target_num 的因子 若是因子則目標是可以被整除

if(target_num%i == 0)sum+=i ;累積因子和

}

if(sum == target_num)cout<<"是完美數"<<endl;

else cout<<"不是完美數"<<endl;

for循環實現

int target_num = 6 ;//換成你要輸入的數

int sum = 0 ;用來累加因子的和

for (int i = 1; i < target_num; i++)

{

//判斷i是否為目標數target_num 的因子 若是因子則目標是可以被整除

if(target_num%i == 0)sum += i ;//累積因子和

}

if(sum == target_num)cout<<"是完美數"<<endl;

else cout<<"不是完美數"<<endl;

總結

其實完美數判斷起來還是比較簡單的,while循環在簡潔和效率上都是不如for循環的。雖然你的問題是while怎么實現,但是建議用for循環。

java循環,用while循環怎么做最簡潔