尋找n以內的親密數對

2021-10-05 12:44:47 字數 788 閱讀 6581

題目內容:

對於兩個不同的整數a和b,如果整數a的全部因子(包括1,不包括a本身)之和等於b;且整數b的全部因子(包括1,不包括b本身)之和等於a,則將a和b稱為親密數。自定義函式fac(x)計算x包括1但不包括本身的所有因子和並返回。從鍵盤輸入整數n,呼叫fac()函式尋找n以內的親密數並輸出。注意每個親密數對只輸出一次,小的在前大的在後,例如220-284。

輸入格式:

按提示用input()函式輸入

輸出格式:

按樣例形式,可使用形如「print("{}-{}".format(引數1, 引數2))」輸出語句進行親密數對的輸出

輸入樣例:

500輸出樣例:

220-284

def

shusu

(numble)

: su_m =

0for i in

range(1

, numble)

:if numble % i ==0:

su_m += i

return su_m

numble =

int(

input()

)for i in

range(2

,numble +1)

: a = shusu(i)

if shusu(a)

== i and a > i and a <= numble:

print

('-'

.format

(i,a)

)

求N以內的親密數

親密數的含義 如果整數a的全部因子 包括1,不包括a本身 之和等於b 且整數b的全部因子 包括1,不包括b本身 之和等於a,則將整數a和b稱為親密數。那麼怎麼求n以內所有的親密數,如下 include intmain for n 0,i 1 i b 2 i 計算b的各因子,各因子之和存於n if n...

輸出500以內的所有親密數

1 程式中既要有for迴圈也要有while或do while迴圈 2 在輸出每對親密數時,小數在前 大數在後,並去掉重複的親密數對,例如 220和284是一對親密數,而284和220也是一對親密數,只輸出220和284這對 親密數 3 輸出要有文字說明。輸出時每對親密數用一對圓括號括起來,兩數間逗號...

python尋找n以內的素數演算法

本文所利用的素數性質是 所有的素數都是奇數,且除2,3外其餘素數都出現在6n 1與6n 1這兩個數列中 具體 如下 首先建立乙個長度為n的false列表,再將索引為2,3,和6n 1 6n 1這兩個數列在列表中的值改為true l false n l 2 l 3 truel 5 n 6 true l...