关于素数的算法是程序竞赛比较重要的数论知识,我们来看通常会使用的几个算法。

我们先来复习几个基本概念:

质数:对于大于1的自然数,若除了1和它本身,没有别的因数,则称这个数为质数,质数也叫素数。反之,称其为合数。

#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;
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

02-05 16:35