素数怎么判断,for循环判断是不是素数


如何判断质数 根据定义所有素数都是大于1的自然数 , 那么小于等于1的数都没有素数的概念 。 数字2只有1和2两个因数 , 因而必定是素数 , 其他数字x只要判定从2到x-1都无法被它整除 , 就证明改数字是素数 。
用C语言如何判断素数? 按照如下步骤即可用C语言判断素数:
1、首先打开visual C++ 6.0 , 然后点击左上角的文件 , 再点击新建 。
2、然后在弹出的新建对话框中点击C++Source File 。
3、在新建的文件文本框中输入预处理命令和主函数 , 即函数头和空类型 。
4、然后再定义变量并输入一个数字 , 即定义变量的数据类型 , 输出文字提示 , 再输入一个数字 。
5、然后用for函数和if函数判断是否是素数 。
6、点击确定后即可成功创建刚刚新建的程序 , 随机输入一个数字即可验证一下刚刚创建的C语言 。

怎样判断一个数是不是质数? 从1开始遍历到该数的开方 , 如果找到一个数能整除该数 , 证明这不是个素数 , 看看以下代码

#include<math.h> //头文件为math.h
int isprime(int a)
{
int i;
for (i = 2; i <= sqrt((long double)a); ++i)
{
if (a % i == 0)
{
return 0; //能整除就返回不是
}
}
return 1; //都不能整除返回是
}
如何判断一个数是不是素数???? 用你需要判断的数 , 依次除以大于2 , 且比它小的数 。 如果判断完了都没有一个能整除的话 , 就是素数 。 C语言程序如下:

include <stdio.h>
main() {
int i=0, j=0, c=1000,isPrimeNo=0;
for (i = 3; i < c; i++) {
isPrimeNo=1;
for (j = 2; j < i; j++) {
if (i % j == 0) {
isPrimeNo=0;
break;
}
}
if(isPrimeNo == 1)
printf(" %d |", i);
}
}
怎么用判断素数 素数又称质数 。 指在一个大于1的自然数中 , 除了1和此整数自身外 , 不能被其他自然数整除的数 。 质数是与合数相对立的两个概念 , 二者构成了数论当中最基础的定义之一 。 基于质数定义的基础之上而建立的问题有很多世界级的难题 , 如哥德巴赫猜想等 。 截至2012年6月底 , 质数尚未完全找到通项公式 。

质数的无穷性的证明
质数的个数是无穷的 。 最经典的证明由欧几里得证得 , 在他的《几何原本》中就有记载 。 它使用了证明常用的方法:反证法 。 具体的证明如下:
●假设质数只有有限的n个 , 从小到大依次排列为p1 , p2 , …… , pn , 设 N = p1 × p2 × …… × pn , 那么 , N+1是素数或者不是素数 。
●如果N+1为素数 , 则N+1要大于p1 , p2 , …… , pn , 所以它不在那些假设的素数集合中 。
●如果N+1为合数 , 因为任何一个合数都可以分解为几个素数的积;而N和N+1的最大公约数是1 , 所以N+1不可能被p1 , p2 , …… , pn整除 , 所以该合数分解得到的素因数肯定不在假设的素数集合中 。
●因此无论该数是素数还是合数 , 都意味着在假设的有限个素数之外还存在着其他素数 。
●对任何有限个素数的集合来说 , 用上述的方法永远可以得到有一个素数不在假设的素数集合中的结论 。
●所以原先的假设不成立 。 也就是说 , 素数有无穷多个 。
其他数学家也给出了他们自己的证明 。 欧拉利用黎曼函数证明了全部素数的倒数之和是发散的 , 恩斯特·库默的证明更为简洁 , Hillel Furstenberg则用拓扑学加以了证明 。

推荐阅读