c語言關於完數(完全數,完美數)的判斷及尋找

2021-10-11 11:41:13 字數 805 閱讀 6640

##c語言關於完數(完全數,完美數)的判斷及尋找

對於乙個 正整數,如果它和除了它自身以外的所有 正因子 之和相等,我們稱它為 「完美數」。

示例 1:

輸入:28

28 = 1 + 2 + 4 + 7 + 14

1, 2, 4, 7, 和 14 是 28 的所有正因子。

提示1 <= num <= 108

由上定義可知找出某個範圍的完數:

#include

intmain()

}if(sum == i)

// 加起來的因子和如果等於i,就是完數

}printf

("\n");

}}return0;

}

如果是判斷,那麼想這個數被乙個因子除餘數0

把這個因子加起來後因子和這個數

就行,下面是思路不是過程。

scanf i; sum=1; for(j=2;j但如果數太大,會有超時情況,就需要開方

下面這種

#include

#include

intmain()

else}}

if((j+1

)==n)

else

}return0;

}

思路是 28開方為5

28的因子有 1,2,4,7,14.

發現 214=47=28

2,4 <5 最大因子數14=28/2

用兩個迴圈,把兩個相乘因子數加,最後末尾加1就行;

java求完數(完全數 完美數)

package com.face public class sumnum 求完數 完數的定義 乙個數恰好等於它的所有因子之和 public static void fun for int i 1 i 1000 i int factor 0 定義因子變數和,初始值0 for int j 1 j完全數 ...

C語言 輸出500以內的完數

乙個數如果恰好等於它的因子之和,這個數就稱為 完數 例如,6的因子是1,2,3,且6 1 2 3,因此6是完數。程式設計找出500以內的所有完數,並按下面的格式輸出其因子 6是乙個完數,它的因子是1,2 3。include define max 500 intmain void 判斷x是否是完數,如...

完美數的演算法設計(C語言)

完全數 perfect number 又稱完美數或完備數,是一些特殊的自然數。它所有的真因子 即除了自身以外的約數 的和 即因子函式 恰好等於它本身。如果乙個數恰好等於它的因子之和,則稱該數為 完全數 尋找完美的數 題目描述 所謂完美的數是這個數除了它自身之外,所有因子的和等於該數。例如 28,其因...