课程首页地址:http://blog.csdn.net/sxhelijian/article/details/7910565


【项目3- 有趣的数字】先阅读例题,体会处理数字的一般方法,然后自行选题进行解决,掌握这种类型程序设计的一般方法。

任务:解决下面的问题(选做一道即算完成任务)

1)输入一个正整数,判断其是否为一个素数。(注:判断素数还有不少优秀的高效率算法,本文只采用了理解上最简单的方法,没有引导读者掌握那些算法,实在罪过,请读者自行研究求素数算法。)

#include<iostream> 
#include<cmath> 
using namespace std;  
int main()
{  
	
	int i,m,k;
	bool prime=true;
	cin>>m;
	k=int(sqrt(m));
	for(i=2;i<=k;i++)   //最多循环至……
	{
		if(m%i==0)
		{
			prime=false;
			break;
		}
	}
	if(prime)
		cout<<m<<"是素数!"<<endl;
	else
		cout<<m<<"不是素数!"<<endl;
	return 0; 
}  
运行结果

C++第11周项目3(1)——判断素数_C

不用专门变量的方法:

#include<iostream>  
#include<cmath>
using namespace std;  
int main()
{
	//bool prime=true;   //本例中要演示的是,并非一定要用prime这个变量
	int i,k,m;
	cin>>m;
	k=int(sqrt(m));
	for(i=2;i<=k;i++)   
	{
		if(m%i==0)
		{
			//prime=false;
			break;   //如果由break跳出循环,i<=k一定成立
		}
	}
	if(i>k)  //此处i>k,一定不是通过break退出循环,而是由于for循环条件限制退出
		cout<<m<<"是素数!"<<endl;
	else
		cout<<m<<"不是素数!"<<endl;
	return 0;
}