TA的每日心情 | 慵懒 2016-4-21 12:07 |
---|
签到天数: 3 天 连续签到: 1 天 [LV.2]偶尔看看I 累计签到:3 天 连续签到:1 天
|
马上加入,结交更多好友,共享更多资料,让你轻松玩转电力研学社区!
您需要 登录 才可以下载或查看,没有账号?立即加入
×
素数定义:质数又称素数。指在一个大于1的自然数中,除了1和此整数自身外,没法被其他自然数整除的数。换句话说,只有两个正因数(1和自己)的自然数即为素数。比1大但不是素数的数称为合数。1和0既非素数也非合数。素数在数论中有着很重要的地位。
( P! N$ l* h8 D8 y b d7 S
/ w$ Z/ m( b- G1 w7 A* S9 E% A) |素数是算法中经常提到的一种数的类型,求一个正整数的所有素数因子也是很多算法中经常用到的,今天在做一道算法题时也遇到了素数的求解,故在此记录一下,以备后用!
' M0 m* E; O0 ~# I. t1 G' j' K" `/ K5 ^: ?
#include <iostream>
; x$ \3 j9 Y# W+ S+ D- S# Xusing: H, o% n: m8 b
namespace std;
% c' u5 r. ] H6 H# h5 A! Q5 X% f5 k
9 x# |& m$ w; {+ Q0 \void PrimaryCal(int num)
' v6 `8 K+ P2 n, X1 Q( K" q{% i! d7 ?1 N9 d$ H% k1 h
for(int i=2;i*i<=num;i++)# l! ^: N9 L( w8 J/ A7 Z
{
, x0 C* t8 n5 n# I+ W while(num%i==0)
# U* d0 ~2 y: `1 \- w {
, `, `! G- w/ v0 s4 m, a$ w. W cout<<i<<"
2 }! _1 b" j8 |# U4 a$ ~5 w, l";6 k1 R3 k. L; O# W5 f0 Y0 w* f
num/=i;
6 G% z8 j( o3 M4 K J p- B }
8 z' x* Y" L! @* x }9 `+ r3 Q9 U* _8 `( [9 t
if(num!=1)
7 ^; c% h1 y7 k* }1 A {
- ~, B+ R }% u) y' \) ]. M5 c cout<<num;
2 s$ K' P! h3 J }- ^" X' i0 g! m7 }+ C
}
; T' ?) a( D8 u( T) D: O* J0 X B; @7 v- V: X- f
int main(void)$ b0 i0 _0 d- ^ ~8 f( f
{
) `2 b# o4 V1 W; a2 q2 J for(int i=10;i<=100;i++)* h1 D/ z1 K, j' X6 ? T
{
/ t% n, J% \6 N& }/ r- S: y$ Q4 _, s cout<<i<<" = ";
, o& H7 \# y- E0 P( i PrimaryCal(i);, O7 X9 i, P: p0 j+ h3 @
cout<<endl;% {/ Q$ J; ~- f, V
}3 o& j5 j W! ?& e; S& A# Z6 ^
return+ l6 p: H, c) J2 p' W$ t' \9 j
-1;
8 R- ~# |+ S+ _0 ]" |! g' E$ I j} |
|