质数是一个大于1的整数,并且质数的唯一因素应该是一个本身。
一些第一个质数为-
2, 3, 5, 7, 11, 13 ,17
使用功能检查数字是否为质数的程序如下。
#include <iostream> using namespace std; void isPrime(int n) { int i, flag = 0; for(i=2; i<=n/2; ++i) { if(n%i==0) { flag=1; break; } } if (flag==0) cout<<n<<" is a prime number"<<endl; else cout<<n<<" is not a prime number"<<endl; } int main() { isPrime(17); isPrime(20); return 0; }
输出结果
17 is a prime number 20 is not a prime number
该函数isPrime()
用于找出数字是否为质数。有一个循环从n的2到一半,其中n是要确定的数字。循环的每个值都除以n。如果此除法的余数为0,则意味着n可被一个数字整除,而不是一个整数或一个整数。因此,它不是质数,并且标志设置为1。然后使用break语句退出循环,如下所示-
for(i=2; i<=n/2; ++i) { if(n%i==0) { flag=1; break; } }
如果标志的值保持为零,则该数字为质数并显示出来。如果将标志的值更改为1,则该数字不是质数,而是显示该数字。
if (flag==0) cout<<n<<" is a prime number"; else cout<<n<<" is not a prime number";
该函数isPrime()
从被呼叫main()
函数的值17和20。这被示出如下。
isPrime(17); isPrime(20);