isPrime()函数:判断素数,构造素数表
素数函数isPrime()
(素数:指在大于1的自然数中,除了1和它自身外,不能被其他自然数整除的数。)
方法一
int isPrime(int x) {int ret = 1;int i;if (x == 1) ret = 0;for (i = 2;i < x;i++) {if (x % i == 0) {ret = 0;break;}}return ret;
}
方法二
(去掉偶数从3到x-1,每次加2)
int isPrime(int x) {int ret = 1;int i;if (x == 1||(x%2==0&&x!=2)) ret = 0;for (i = 3;i < x;i+=2) {if (x % i == 0) {ret = 0;break;}}return ret;
}
(无须到x-1,到sqrt(x)——x的平方根就行了)
sqrt() 头文件 #include<math.h>
int isPrime(int x) {int ret = 1;int i;if (x == 1||(x%2==0&&x!=2)) ret = 0;for (i = 3;i < sqrt(x);i+=2) {if (x % i == 0) {ret = 0;break;}}return ret;
}
另外,用数组构造素数表
方法一
int isPrime(int x,int knownPrimes[],int numberOfKnownPrimes) {int ret = 1;int i;for (i = 0;i < numberOfKnownPrimes;i++) {if (x % knownPrimes[i] == 0) {ret = 0;break;}}return ret;
}//该函数用于判断x能否被已知的素数数组中的元素除尽
int main(void) {const int number = 100;int prime[number] = { 2 };int count = 1;int i = 3;//一下将判断出的新的素数加入数组while (count < number) {if (isPrime(i, prime, count) ){prime[count++]=i;}i++;}for (i = 0;i<number;i++) {printf("%d", prime[i]);if ((i + 1) % 5)printf("\t");else printf("\n");}return 0;
}
方法二
#include <stdio.h>int main(void) {const int maxNumber = 25;int isPrime[maxNumber];int i, x;//先将数组全赋值为turefor (i = 0;i < maxNumber;x++) {isPrime[i] = 1;}//利用倍数全部排除for (x = 2;x < maxNumber;x++) {if (isPrime[x]) {for (i = 2;i * x < maxNumber;i++) {isPrime[i * x] = 0;}}}for (i = 2;i < maxNumber;i++) {if (isPrime[i]) {printf("%d\t", i);}}printf("\n");return 0;
}
isPrime()函数:判断素数,构造素数表相关推荐
- 素数(质数)判断、打印素数表(Eratosthenes筛法)、质因子分解————附完整代码
文章目录 1 概念 2 素数的判断 2.1 思想 2.2 实现代码 3 素数表的获取 3.1 朴素算法 3.1.1 思想 3.1.2 3 实现代码 3.2 Eratosthenes筛法 3.2.1 思 ...
- python定义函数prime判断是否是素数_用自定义函数判断素数 用C语言编写自定义函数prime(int x),判断x是否为素数?...
用C语言编写自定义函数prime(int x),判断x是否为素数? int prime(int x) { int i,k k=(int)sqrt( (double)x ) for(i=2i&l ...
- Python函数判断素数并输出前五十个素数
输入一个数,通过函数判断这个数是否为素数,并编写打印函数打印前五十个素数. def isprime(number): #判断一个数是否为素数#div=2while div<=number/2:i ...
- 实验六 调用函数 判断素数
在编写程序时 对调用函数格式模糊,还是不经常使用的结果, 在复习后,得出 1:所写函数头 要内外表示格式,且在定义函数时要在结束时 加":",而在调用时则不用. 2:所定义的函数返 ...
- Python 内置函数—判断素数
数学运算 abs():返回数值的绝对值: 例如: abs(-4) 4 divmod():返回两个数值的商和余数: 例如: divmod(7,2) (3,1) max():返回元素中的最大值: 例如: ...
- C++使用 自定义函数 判断素数
题目描述 请你编程运用自定义函数,输入的整数 n ,计算 n 以内的素数个数. 输入格式 一行一个整数 n . 输出格式 一行一个整数,输出 n 以内的整数个数. 样例数据 输入样例 #1 输出样例 ...
- c语言用fun函数判断素数,编写函数Fun,函数的功能是:判断一个数是否为素数。...
int fun() {int i,j,t=1,sum=0; for(i=100;i<=200;i++){ for(j=2;j if(t){printf("%d\t",i);s ...
- 定义一个判断素数的函数
#include<stdio.h> //定义一个函数判断素数 void sushu(int s){ int i,j,k=0; for(i=2;i<s;i++) if(s%i==0){ ...
- 写一个判断素数的函数(isprime),在主函数输入一个正整数,输出是否是素数的信息。提示:int main(){int x=23; if (isprime(x)) print
写一个判断素数的函数(isprime),在主函数输入一个正整数,输出是否是素数的信息. 提示: int main() {int x=23; if (isprime(x)) printf("i ...
- isPrime 判断素数的函数
c语言中int isPrime(int n)是什么意思 isPrime 是自定义的一个函数,传入一个整数n,判断是否为素数.若是返回1,否则返回0. #include "stdio.h&qu ...
最新文章
- glob及IO重定向
- NYOJ 927 The partial sum problem 【DFS】+【剪枝】
- 灵魂 36 问,让你快速熟悉一个系统
- Jenkins 在 Tomcat 中的部署及代码静态检查工具集成
- css响应式布局_用 CSS Grid 布局制作一个响应式柱状图
- 【JavaScript算法】---快速排序法
- python获取时间戳毫秒级_Python获取秒级时间戳与毫秒级时间戳
- linux mint下安装vnc,VNC远程连接Linux mint桌面
- 分库分表工具:Apache ShardingSphere 5.0.0-alpha 发布
- oracle processes 的大小,Oracle中sessions和processes的大小关系(10g和11g不同)
- 瑞友天翼应用虚拟化系统V6.0之设备重定向
- Nobook虚拟实验室完爆各种传统实验室
- 股票实时行情接口如何获得快照历史数据?
- 小米电视android版本最好,小米电视安装当贝桌面+安卓TV最简单好用的NAS播放器...
- nrf52在未配对的情况下使用白名单广播,指定安卓手机允许连接
- PhotonServer教程《五》
- java编程电话号码查询_java课程设计电话号码查询系统(15页)-原创力文档
- 如何成功实施结对编程
- 边下边看 七款P2P下载软件全能大比拼
- 南京理工计算机科学与技术怎样,南京理工大学计算机科学与技术学院
热门文章
- 【Lintcode】741. Calculate Maximum Value II
- stata中计算公式命令_stata 计算命令:
- scipy.linalg中kron的用法
- latex关于的报错问题及表格排版问题
- 学计算机办公软件多久能学好,学好办公软件的方法 如何快速学好办公软件
- solidworks电气元件3d库_丨部件库丨西门子3RV6电机保护开关
- Latex 三级子标题\subsubsection{xxx}后面内容不换行 要注意
- 罗马音平假名中文可复制_打上花火歌词,日文/罗马音/中文
- 学计算机的一直对画画感兴趣,[电脑绘画兴趣小组教学总结]sai电脑绘画入门教学...
- mysql预处理stmt_mysqli_stmt类:使用预处理语句处理SELECT查询结果