C 孿生數求解

2021-10-07 07:35:30 字數 999 閱讀 7895

孿生數定義:如果a的約數(因數,包含1,但不包含a本身)之和等於b,b的約數(因數)之和等於a,a和b稱為孿生數(a和b不相等)。

試找出正整數m和n之間的攣生數。

從控制台輸入兩個正整數m和n(1<=m在標準輸出上輸出符合題目描述的m和n之間的全部攣生數對(包括m和n)。

每行輸出一對孿生數,用乙個空格隔開,小的先輸出;各行李生數按照第乙個數從小到大的順序輸出,

一對攣生數隻輸出一次。如果沒有符合要求的李生數對,則輸出字串「none"。

20

300

220

284

200

250

none
#include

using

namespace std;

// 輸出區間[a,b]之間的孿生數

void

printtwins

(int m,

int n)

;int p =0;

for(

int k=m;k<=n;k++)}

// 孿生數 k 已經存在,跳過

if(arr[t]

==k)

// 用 k/2而不是 k 可減少不必要的計算,提高速度

for(

int j=

1;j<=k/

2;j++)}

// ra是 k 的因數之和, [ra,rb]

if(ra>=m && ra<=n)

}// rb 是 ra 的因數之和,ra與rb不等,且 rb等於 k

if(rb== k && ra!=rb)}}

// 沒有出現孿生數

if(p==0)

}int

main()

}

孿生漂亮數

所謂孿生素數就是乙個自然數,若它的素數至少是兩重的 相同的素數至少個數為兩個 如36 2 2 3 3 則稱該數為 飄亮數 若相鄰的兩個自然數都是飄亮數就稱他們為一對孿生漂亮數,例如8和9就是一對 孿生飄亮數 程式設計再找一對孿生漂亮數 include include using namespace ...

C 孿生素數

所謂孿生素數指的是間隔為2的相鄰的素數,他們之間的距離已經近得不能再近了,就像孿生兄弟一樣,最小的孿生素數是 3,5 在100以內還有 5,7 11,13 17,19 17,19 29,31 41,43 59,61 71,73 總計8組。但隨著數字的增大,孿生素數的分布越來越稀疏,尋找起來也變得困難...

求孿生數 親和數

當前程式設計題 求孿生數 1.問題描述 孿生數定義 如果 a 的約數 因數,包含1,但不包含a本身 之和等於 b b 的約數 因數 之和等於 a a和 b 稱為孿生數 a和b不相等 試找出正整數 m 和 n 之間的孿生數。輸入形式 從控制台輸入兩個正整數m和n 1 m 輸出形式 在標準輸出上輸出符合...