乙個數如果恰好等於它的各個因子(該數本身除外)之和,如 6=3+2+1,那麼稱該數為「完數」;若因子之和大於該數,則稱其為「盈數」,求出2到60之間的所有完數和盈數。
題目沒有任何輸入。
輸出2到60之間的所有「完數」和「盈數」,並以如下形式輸出:
e:e1 e2 e3 …(ei為完數)
g:g1 g2 g3…(gi為盈數)
//完數和盈數
#include
#include
#include
using
namespace std;
vector<
int> numbere;
vector<
int> numberg;
//判斷因子的函式(除了該數本身)
intjudgenumber
(int n)
}return sum;
}int
main()
elseif(
judgenumber
(i)> i)
}//兩種方法輸出
//(方法一)
// vector::iterator it;
// //輸出完數
// printf("e:");
// for(it = numbere.begin(); it != numbere.end(); it++)
// //輸出盈數
// printf("\ng:");
// for(it = numberg.begin(); it != numberg.end(); it++)
//(方法二)
printf
("e:");
for(
int i =
0; isize()
; i++
)printf
("\ng:");
for(
int j =
0; jsize()
; j++
)printf
("\n");
return0;
}
完數與盈數
乙個數如果恰好等於它的各因子 該數本身除外 子和,如 6 3 2 1,則稱其為 完數 若因子之和大於該數,則稱其為 盈數 求出2 到60 之間所有 完數 和 盈數 並以如下形式輸出 e e1 e2 e3 ei 為完數 g g1 g2 g3 gi 為盈數 無按描述要求輸出 注意e和g後面的冒號之後都有...
「完數」和「盈數」
乙個數如果恰好等於它的各因子 該數本身除外 子和,如 6 3 2 1,則稱其為 完數 若因子之和大於該數,則稱其為 盈數 求出2 到60 之間所有 完數 和 盈數 並以如下形式輸出 e e1 e2 e3 ei 為完數 g g1 g2 g3 gi 為盈數 include include include...
完數VS盈數
乙個數如果恰好等於它的各因子 該數本身除外 子和,如 6 3 2 1。則稱其為 完數 若因子之和大於該數,則稱其為 盈數 求出2到60之間所有 完數 和 盈數 題目沒有任何輸入。輸出2到60之間所有 完數 和 盈數 並以如下形式輸出 e e1 e2 e3 ei為完數 g g1 g2 g3 gi為盈數...