如何判断一个数是否为质数(日志2)
一、题目描述
判断一个整数是否为质数,如果是质数,输出“Yes",否则输出”No"。
二、质数的定义
质数(英文名:Primenumber)又称素数,是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数。质数又称素数。一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做质数;否则称为合数(规定1既不是质数也不是合数)。
三、判断质数的方法
由质数定义可知,当一个数n从2到n-1都没有一个数能够被其整除时,该数n为质数,所以我们可以写一个循环。
#include<iostream> using namespace std; int main() { int n,i; cin>>n; for(i=2;i<=n-1;i++)//循环从2到n-1。 {if(n%i==0) {break; } } if(i<n||n==1)//注意!!1既不是质数也不是合数 { printf("No\n"); } else if(i>=n) { printf("Yes\n"); } return 0; }