关于素数的算法是程序竞赛比较重要的数论知识,我们来看通常会使用的几个算法。
我们先来复习几个基本概念:
质数:对于大于1的自然数,若除了1和它本身,没有别的因数,则称这个数为质数,质数也叫素数。反之,称其为合数。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
#include<iostream>
#include<cmath>
using namespace std;
void IsPrime( int );
int main()
{
int Input;
cout << "请输入要判断的数字:" ;
cin >> Input;
IsPrime(Input);
cin.get();
cin.get();
return 0;
}
//判断是否为质数
void IsPrime( int x)
{
if (1 == x)
{
cout << "1既不是质数也不是合数!" << endl;
return ;
}
for ( int i = 2; i <= sqrt (x); i++)
if (x%i == 0)
{
cout << "您所输入的数字为合数!" << endl;
return ;
}
cout << "您所输入的数字为质数!" << endl;
return ;
}
|
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。
原文链接:http://www.cnblogs.com/Amedeo/p/6833321.html