TA的每日心情 | 慵懒 2016-4-21 12:07 |
|---|
签到天数: 3 天 连续签到: 1 天 [LV.2]偶尔看看I 累计签到:3 天 连续签到:1 天
|
马上加入,结交更多好友,共享更多资料,让你轻松玩转电力研学社区!
您需要 登录 才可以下载或查看,没有账号?立即加入
×
素数定义:质数又称素数。指在一个大于1的自然数中,除了1和此整数自身外,没法被其他自然数整除的数。换句话说,只有两个正因数(1和自己)的自然数即为素数。比1大但不是素数的数称为合数。1和0既非素数也非合数。素数在数论中有着很重要的地位。
: l0 j/ _# N5 ?. k3 y0 b5 X+ Q7 L; }0 C% L
素数是算法中经常提到的一种数的类型,求一个正整数的所有素数因子也是很多算法中经常用到的,今天在做一道算法题时也遇到了素数的求解,故在此记录一下,以备后用!" c; O- f1 N# M r, V
3 ?3 i; o( ^5 A1 M; o0 \. A0 d/ r
#include <iostream>! I& j# v: \" o0 @& \1 x8 u8 c8 F. o
using! P% G5 Y+ ~5 s/ x
namespace std;
. m- W, [- _6 `0 k
9 m0 f' A( x1 o5 ~1 j3 @7 k8 {void PrimaryCal(int num)& e- b% E- l8 @( o; l1 \/ Z3 S# G$ F
{
4 F- ~! Q3 d q% O5 ?* q for(int i=2;i*i<=num;i++)% `5 X2 h2 C q% s- z
{) ?/ h! M j3 b7 L6 L( V* L- t
while(num%i==0)+ S9 O8 f. T7 J& v+ i0 e
{* n i i+ d3 @ i- ?
cout<<i<<"
, `8 j7 P" @- ?: t$ t9 a$ p6 n";4 W1 z5 f1 T& ^. k, p2 F/ D
num/=i;
# |% v3 P" m9 p3 s4 m& Z: ^" D }1 v8 \- T' t H
}
n- k; k T) Y) L8 [1 Y6 B if(num!=1), w7 Q' f0 w, K5 @
{1 [& k8 k2 }6 _: k1 j. p
cout<<num;
- [- A2 L" ?1 g8 f. u; p# l: y4 K1 W }. W2 \5 S8 H2 q1 S/ B7 t1 V3 a& H
}1 ^ K a$ P! Q0 s _* M
* B- W9 b/ f* g1 ~
int main(void)
: e/ B7 B% o5 K5 ]3 Q{& }0 s' c0 {" S7 d2 y; }" ^- w! r
for(int i=10;i<=100;i++)
# L6 k0 U. J3 i, j* ]4 s, K {1 U( @0 y3 A2 g, _; u
cout<<i<<" = ";
0 d8 c' n; ^) \/ G- F9 G PrimaryCal(i);+ D8 Z0 h0 y, }% p, z
cout<<endl;6 F1 t3 `$ R5 E" O6 r
}
- h8 m; C( V- v5 Y4 @ return
* M3 w& E- W6 z- O! l3 `& o-1;# S G/ _" g2 w- O: B8 t
} |
|