Leetcode/数学/计数质数
作者:互联网
质数的算法:
1,判断n是否能被2~n-1整除
输入的数n不能被2-(n-1)整除,说明是素数
输入的数n能被2-(n-1)整除,说明不是素数
#include<stdio.h> int main() { int i, n; bool i; printf("please input a number:"); scanf("%d", &n); for (i = 2; i < n ; i++) { i=panduan(i,n); if(i){ printf("是质数"); } } } bool panduan(int i,int n){ int i; for(j=2;j<n;j++){ if(i%j==0){ if(j!=i){ return false; } } } return true; }
2,判断n是否能被2~√n间的整数整除
输入的数n不能被2-√n整除,说明是素数
输入的数n能被2-√n整除,说明不是素数
#include<stdio.h> int main() { int i, n; bool i; printf("please input a number:"); scanf("%d", &n); for (i = 2; i < n ; i++) { i=panduan(i,n); if(i){ printf("是质数"); } } } bool panduan(int i,int n){ int i; int m=sqrt(n); for(j=2;j<m;j++){ if(i%j==0){ if(j!=i){ return false; } } } return true; }
标签:panduan,int,质数,计数,bool,printf,整除,Leetcode 来源: https://www.cnblogs.com/liyangXu/p/14697830.html