TA的每日心情 | 慵懒 2016-4-21 12:07 |
---|
签到天数: 3 天 连续签到: 1 天 [LV.2]偶尔看看I 累计签到:3 天 连续签到:1 天
|
马上加入,结交更多好友,共享更多资料,让你轻松玩转电力研学社区!
您需要 登录 才可以下载或查看,没有账号?立即加入
×
素数定义:质数又称素数。指在一个大于1的自然数中,除了1和此整数自身外,没法被其他自然数整除的数。换句话说,只有两个正因数(1和自己)的自然数即为素数。比1大但不是素数的数称为合数。1和0既非素数也非合数。素数在数论中有着很重要的地位。5 C; t- h9 t8 ~9 s) p
+ B9 J$ z9 A c, r3 q$ F; k素数是算法中经常提到的一种数的类型,求一个正整数的所有素数因子也是很多算法中经常用到的,今天在做一道算法题时也遇到了素数的求解,故在此记录一下,以备后用!
3 S6 |7 |% Z! g0 v. G* O$ H" T
/ B7 T' X+ _8 \1 W9 R#include <iostream>
t; v* T, B% s' G+ ]using
2 K; c x+ |; ]/ G/ k5 rnamespace std;8 d% L1 [: W" V
" e: z* G: W2 o. l9 Svoid PrimaryCal(int num)
4 h# t* e! ]' M: `5 S. @{! ]8 J7 a: C+ \: v7 B
for(int i=2;i*i<=num;i++)
1 G" u' ^1 f# X2 R {' C; X% O* K5 S# q4 Y$ E% h
while(num%i==0)
5 k; y1 g8 S% ~. |7 C7 O0 c {
. g3 |$ s2 t* P; F$ U) P% c cout<<i<<"
3 W, L g+ i) L5 x( [% Y";
2 ~# e. O; ]- z- d% U5 { num/=i;
! Q' O$ L% M" r }
% ?3 B# N2 @- o" z }
: n7 E2 A* J' J! Q ^" t/ W if(num!=1)
# Q. j" J) }0 e {5 A' m' p: Q; P) S9 T8 ]
cout<<num;
+ C9 a) n* \. `, n0 i7 a+ o& L# J }
7 d2 x2 i; M, n6 X* Y4 t: n; o}3 I1 ]+ I. S- C8 \8 ^9 m
% `, E( x' b1 z) b3 yint main(void)
5 O* L; _8 _, J5 U0 ?& ` n0 q{
0 K5 O: a. u' t for(int i=10;i<=100;i++)4 I5 ]& I7 _; G q3 h( R+ I# A+ r
{3 `" O4 R; ~ I# b; W: X: M$ I; }3 |
cout<<i<<" = ";2 w2 H6 }/ O8 P0 ~
PrimaryCal(i);
! ]+ S0 T; {0 Y$ y) M cout<<endl;. s( O5 e7 E2 y4 R0 ~
}4 p' u8 _. U/ i/ Z+ g, G5 z- ?
return
1 A r: V. H6 R5 D( s5 {-1;9 f2 t8 d5 @' c7 z8 P( U
} |
|