/*
*Copyright (c) 2014,烟台大学计算机学院
*All rights reserved.
*文件名称: test.cpp
*作 者:满星辰
*完成日期:2014年11月9日
*版本号:v1.0
*
*问题描述:编制一个返回值为bool型的函数isPrimer(),
用于判断参数是否为素数(是素数返回true,否则false)
*输入描述: 一个整数
*程序输出:判断是否为素数
*/
#include <iostream>
#include <cmath>
using namespace std;
bool isprimer(int m);
int main()
{
int m;
cin>>m;
if(isprimer(m))
cout<<m<<"是素数";
else
cout<<m<<"不是素数";
return 0;
}
bool isprimer(int n)
{
bool primer=true;
int k=int(sqrt(n));
for(int i=2;i<=k;++i)
{
if(n%i==0)
{
primer=false;
break;
}
}return primer;
}
运行结果:
学习心得:
突然想到了上周的那个大奖赛计分
可不可以连续输入几个数来判断是否为素数
当输入某数时,程序结束
程序修改如下:
/*
*Copyright (c) 2014,烟台大学计算机学院
*All rights reserved.
*文件名称: test.cpp
*作 者:满星辰
*完成日期:2014年11月9日
*版本号:v1.0
*
*问题描述:编制一个返回值为bool型的函数isPrimer(),
用于判断参数是否为素数(是素数返回true,否则false)
*输入描述: 一个整数
*程序输出:判断是否为素数
*/
#include <iostream>
#include <cmath>
using namespace std;
bool isprimer(int m);
int main()
{
int m;
char ch;
while(ch!='N' && ch!='n')
{
cout<<"请输入一个整数:";
cin>>m;
if(isprimer(m))
cout<<m<<"是素数";
else
cout<<m<<"不是素数";
cout<<"按 N 键结束,其他键继续。。。。。。。。。。。";
cin>>ch;
}
return 0;
}
bool isprimer(int n)
{
bool primer=true;
int k=int(sqrt(n));
for(int i=2; i<=k; ++i)
{
if(n%i==0)
{
primer=false;
break;
}
}
return primer;
}
运行结果:
学习心得:
完美运行!为自己点赞↖(^ω^)↗