题解-30802.【PY】质数判断
2025-08-19 11:38:46
发布于:浙江
14阅读
0回复
0点赞
本题主要考察如何判断素数 不会真有人做不出来吧
题目解析:
题目没有要求数值a的取值范围,这里默认为int类型。
现要求a是否为素数,若是,则输出"Yes";否则输出
"No".这里还有一个要求,即n如果小于1,直接输出
No
—————————————————————
*代码思路:
所以,我们要先定义整数a,然后把此值放入判断素数
的函数中判断,后按要求输出即可
—————————————————————
*代码展示:
#include<bits/stdc++.h>//定义头文件
using namespace std;//用户命名空间
bool is_prime(int n){//判断素数程序
if(n<2) return 0;//这里对小于2的数做特殊处理,即直接返回0(不为素数)
for(int i=2;i<=sqrt(n);i++){//重点!这里循环判断是否素数,从2到n的平方根(sqrt(n))循环 (也可通过i*i<=n实现同效果)
if(n%i==0) return 0;//作判断,若n有因数则返回false
}
return 1;//若前面没有找到n的因子,则n为素数,返回true
}
int main(){//主函数
int a;//定义整数a
cin>>a;//对a进行输入
if(is_prime(a)){//判断a是否为素数
cout<<"Yes";//若是则输出Yes
}
else{
cout<<"No";//若否则输出No
}
return 0;//完美结束(*^▽^*)
}
*后记
此题还是比较基础的入门题,我的代码也只是比较
简单,便于理解的函数判断。对于判断素数,还有
许多别的方法(埃氏筛,欧拉筛等),感兴趣的可以自行
了解(o´ω`o)ノ
————————————————————
这里空空如也
有帮助,赞一个