第7章實驗任務5 完全數

2021-10-05 05:11:13 字數 848 閱讀 5331

如果乙個正整數m的所有小於m的不同因子(包括1)加起來正好等於m本身,那麼就被稱它為完全數。它是指這樣的一些特殊的自然數,它所有的真因子(即除了自身以外的約數)的和,恰好等於它本身。

注意:1沒有真因子,所以不是完全數。例如,6就是乙個完全數,是因為6 = 1 + 2 + 3。

請編寫乙個判斷完全數的函式isperfect(),然後判斷從鍵盤輸入的整數是否是完全數。

要求:按如下原型編寫判斷完全數的函式,若函式返回0,則代表不是完全數,若返回1,則代表是完全數。

int isperfect(int x);

**要求輸入提示資訊為: 「input m:\n」

**要求輸入格式為: 「%d」

**要求輸出格式為

「%d is a perfect number\n」

「%d is not a perfect number\n」

注:不能使用指標、結構體、共用體、檔案、goto、列舉型別進行程式設計,主函式不能使用int main和return 0。

程式執行示例:

input m:

28↙28 is a perfect number

#include

intisperfect

(int x)

;int main (

)else

printf

("%d is not a perfect number\n"

, m);}

intisperfect

(int x)

if(sum == x)

return1;

else

return0;

}

第7章 陣列實驗

實驗專案 1 寫乙個函式,對用隨機函式產生的10個整數按從小到大的順序排序 氣泡排序 2 寫乙個函式,對用隨機函式產生的10個整數按從小到大的順序排序 選擇排序 3 輸出指定行數的楊輝三角形 4 給定某年某月某日,將其轉換成這一年的第幾天並輸出 5 編寫程式,判斷某一字元是不是 回文數 回文數是從左...

第7章 陣列實驗

實驗專案 1 寫乙個函式,對用隨機函式產生的10個整數按從小到大的順序排序 公升序,氣泡排序實現 2 寫乙個函式,對用隨機函式產生的10個整數按從小到大的順序排序 公升序,用選擇排序實現 3 輸出指定行數的楊輝三角形 4 給定某年某月某日,將其轉換成這一年的第幾天並輸出 5 編寫程式,判斷某一字元是...

第7章 系統函式和任務

圖7.1 onehot和 onehot0 onehot和 onehot0相當自我解釋,在圖7.1中進行了解釋。請注意,如果表示式為 z 或 x onehot或 onehot0將失敗。圖7.1描述了乙個簡單的應用。對於任何乙個匯流排grant的確認,只能有乙個匯流排grant。如圖所示,這很容易通過 ...