-
2021-02-09 19:45:36
质数又称素数。指在一个大于1的自然数中,除了1和此整数自身外,不能被其他自然数整除的数。素数在数论中有着很重要的地位。比1大但不是素数的数称为合数。1和0既非素数也非合数。质数是与合数相对立的两个概念,二者构成了数论当中最基础的定义之一。基于质数定义的基础之上而建立的问题有很多世界级的难题,如哥德巴赫猜想等。算术基本定理证明每个大于1的正整数都可以写成素数的乘积,并且这种乘积的形式是唯一的。这个定理的重要一点是,将1排斥在素数集合以外。如果1被认为是素数,那么这些严格的阐述就不得不加上一些限制条件。
前几天偶尔的有朋友问python怎么判断素数的方法,走网上查了查,总结了python脚本判断一个数是否为素数的几种方法:
#运用python的数学函数
import math
def isPrime(n):
if n <= 1:
return False
for i in range(2, int(math.sqrt(n)) + 1):
if n % i == 0:
return False
return True
#单行程序扫描素数
from math import sqrt
N = 100
[ p for p in range(2, N) if 0 not in [ p% d for d in range(2, int(sqrt(p))+1)] ]
#运用python的itertools模块
from itertools import count
def isPrime(n):
if n <= 1:
return False
for i in count(2):
if i * i > n:
return True
if n % i == 0:
return False
#不使用模块的两种方法
def isPrime(n):
if n <= 1:
return False
i = 2
while i*i <= n:
if n % i == 0:
return False
i += 1
return True
def isPrime(n):
if n <= 1:
return False
if n == 2:
return True
if n % 2 == 0:
return False
i = 3
while i * i <= n:
if n % i == 0:
return False
i += 2
return True
更多相关内容 -
用自定义函数判断素数 用C语言编写自定义函数prime(int x),判断x是否为素数?
2020-12-22 02:36:46用C语言编写自定义函数prime(int x),判断x是否为素数?int prime(int x){int i,kk=(int)sqrt( (double)x )for(i=2i<=ki )if(x%i==0)break// 如果完成所有循环,那么x为素数if(i>k)retrun 1elsereturn ...用C语言编写自定义函数prime(int x),判断x是否为素数?
int prime(int x)
{
int i,k
k=(int)sqrt( (double)x )
for(i=2i<=ki )
if(x%i==0)
break
// 如果完成所有循环,那么x为素数
if(i>k)
retrun 1
else
return 0
}
C语言,编写函数判断一个整数是否为素数,在主函数中调用该函数并输出100以内的全部素数?
参考代码:
#include <stdio.h>
int is_prime_number(int n)
{
int i
int result = 1
if(n==1)
return 0
for(i=2i<ni )
{
if(n%i==0)
{
result = 0
break
}
}
return result
}
int main()
{
int n
printf("100以内的素数包括:")
for(n=1n<=100n )
{
if(is_prime_number(n))
{
printf("%d ",n)
}
}
printf("")
return 0
}
编写程序,其中自定义函数,用来判断一个整数是否为素数,主函数输入一个数,输出是否为素数?
自己动手写吧,这是最基本的能力啦.....(课本一般会有的)
C 编程,编写函数判断变量是否为素数?
多的我就不说了,函数如下(你只需把下面的代码贴在intmain()之前就行了,然后在开头加一个头文件:#include
boolisPrime(intx){
if(x==1)return0
for(inti=2i
if(x%i==0)return0
return1}
函数就是上面的,使用方法:比如你想判断n(这里n为正整数)是否为素数,只需运行isPrime(n),如果n是素数,则刚才的函数返回1,否则返回0.
不懂在发站内信问我
编程用自定义函数求100到200之间的素数?
#include "stdio.h" int isPrime(int n)//判断n是否是素数,是返回1,不是返回0 { int i for(i=2i<=n/2i ) if(n%i==0) return 0 return 1 } int main() { int i printf("100到200之间的素数: ") for(i=100i<=200i ) if(isPrime(i)==1) printf("%d",i) printf(" ") }
python编写一个函数.判断一个数是不是素数,然后调用该函数输出100以内的素数?
def is_prime(n): list_num = [] for i in range(2, n): for num in range(2, int(sqrt(n)) 1): if i % num == 0 and i != num: break elif i % num != 0 and num == (int(sqrt(n))): list_num.append(i) return list_num
-
python2练习题——编写函数,输入数字,判断是否是素数
2020-12-21 14:32:40素数又称质数。一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做质数;否则称为合数。 性质 质数具有许多独特的性质: (1)质数p的约数只有两个:1和p。 (2)初等数学基本定理:任一大于1的... -
Python 判断是否为质数或素数
2020-11-21 03:02:04一个大于1的自然数,除了1和它本身外,...首先我们来第一个传统的判断思路:def handlerNum(num):# 质数大于 1if num > 1:# 查看是否有其他因子for i in range(2, num//2+1):if (num % i) == 0:print(num,"不是质数...一个大于1的自然数,除了1和它本身外,不能被其他自然数(质数)整除(2, 3, 5, 7等),换句话说就是该数除了1和它本身以外不再有其他的因数。
首先我们来第一个传统的判断思路:
def handlerNum(num):
# 质数大于 1
if num > 1:
# 查看是否有其他因子
for i in range(2, num//2+1):
if (num % i) == 0:
print(num,"不是质数")
break
else:
print(num, "是质数")
# 如果输入的数字小于或等于 1,不是质数
else:
print(num, "不是质数")
if __name__ == '__main__':
# 用户输入一个数字
num = int(input("请输入一个数字: "))
# 调用函数处理方法
handlerNum(num)
其实上面循环中的else和if并不是成对的,而是和for并排的,当然for和else搭配出现并不少见,慢慢地会有所体会的,这段代码的含义是,当for里面的条件都不满足时,就会执行else里面的代码。以上就是我们按照传统的思路来解题,其实还有一种更快,更简单的方法解题,那就是利用真或假来判断。
#处理函数
def IsPrime(num):
#根据质数的定义,其必须大于0
if num == 1:
return False
#循环需要判断的次数
for i in range(2, num // 2 + 1):
#如果该数有其他的因子返回False,即不是质数
if num % i == 0:
return False
return True
if __name__ == '__main__':
#输入一个数字
num = eval(input("请输入一个数,判断是否为质数:"))
#调用方法(如果是质数返回True,否则返回False),打印结果
print(IsPrime(num))
这两种方法大体都差不多,只不过这给我们以后解决问题提供了一种新的思路。
python编程中的if __name__ == 'main': 的作用和原理
在大多数编排得好一点的脚本或者程序里面都有这段if __name__ == 'main': ,虽然一直知道他的作用,但是一直比较模糊,收集资料详细理解之后与打架分享。
1、这段代码的功能
一个python的文件有两种使用的方法,第一是直接作为脚本执行,第二是import到其他的python脚本中被调用(模块重用)执行。因此if __name__ == 'main': 的作用就是控制这两种情况执行代码的过程,在if __name__ == 'main': 下的代码只有在第一种情况下(即文件作为脚本直接执行)才会被执行,而import到其他脚本中是不会被执行的。
举个例子,下面在test.py中写入如下代码:
print "I'm the first."
if __name__=="__main__":
print "I'm the second."
并直接执行test.py,结果如下图,可以成功print两行字符串。即,if __name__=="__main__": 语句之前和之后的代码都被执行。
然后在同一文件夹新建名称为import_test.py的脚本,只输入如代码:
import test
执行import_test.py脚本,输出结果如下:
只输出了第一行字符串。即,if __name__=="__main__": 之前的语句被执行,之后的没有被执行。
2、运行的原理
每个python模块(python文件,也就是此处的test.py和import_test.py)都包含内置的变量__name__,当运行模块被执行的时候,__name__等于文件名(包含了后缀.py);如果import到其他模块中,则__name__等于模块名称(不包含后缀.py)。而“__main__”等于当前执行文件的名称(包含了后缀.py)。进而当模块被直接执行时,__name__ == 'main'结果为真。
同样举例说明,我们在test.py脚本的if __name__=="__main__":之前加入print __name__,即将__name__打印出来。文件内容和结果如下,
可以看出,此时变量__name__的值为"__main__";
再执行import_test.py,模块内容和执行结果如下:
此时,test.py中的__name__变量值为test,不满足__name__=="__main__"的条件,因此,无法执行其后的代码。
-
判断一个数x是否为素数
2019-03-30 20:41:27判断一个数x是否为素数 思路: 若一个数是素数,则它的因数只有“1”和它本身。 采用循环,依次从2开始到这个数x-1取模,若期间有(x%i==0),则这个数必然不是素数。 代码: import java.util.*; public class Pra {...判断一个数x是否为素数
思路:
若一个数是素数,则它的因数只有“1”和它本身。
采用循环,依次从2开始到这个数x-1取模,若期间有(x%i==0),则这个数必然不是素数。
代码:import java.util.*; public class Pra { static Scanner scan = new Scanner(System.in); public static void main(String[] args) { SuShu s = new SuShu(); System.out.println("判断一个数是否为素数**"); System.out.println("请输入一个数:"); int x = scan.nextInt(); s.Function(x); } } class SuShu{ boolean flag =true; void Function(int x) { for(int i = 2;i < x; i++) { if(x%i==0) { flag = false; break; } } if(flag==true) System.out.println(x+"是素数"); else System.out.println(x+"不是素数"); } }
*~~此文纯属记录作者学习日记,若有误导,纯属意外。~ *
-
ruby判断一个数是否为质数(素数)示例
2020-12-31 06:16:58ruby判断一个数是否为质数质数又称素数。一个大于1的自然数,如果除了1和它自身外,不能被其他自然数整除的数;(除0以外)否则称为合数 。根据算术基本定理,每一个比1大的整数,要么本身是一个质数,要么可以写成... -
判断一个数是否为素数
2021-08-23 19:37:08用函数判断一个数x是否为素数 素数是只能被1和本身整除的数,所以可以用循环从2开始模等到x减一,如果模等一个数为0的话就等于可以整除那个数,则不是素数。 但是,这样循环下来会有很多的没必要,判断一个数是否为... -
python判断一个数是否为素数
2020-11-21 03:02:05质数(prime number)又称素数。指在一个大于1的自然数中,除了1和此整数自身外,不能被其他自然数整除的数。素数在数论中有着很重要的地位。比1大但不是素数的数称为合数。1和0既非素数也非合数。素数是与合数相对立... -
Python输入一个自然数,判断输入数是否为素数(质数)
2020-09-29 10:47:05Python判断一个自然数是否为素数(质数) “素数又叫质数,质数是指在大于1的自然数中,除了1和它本身以外,不能被其他自然数整除的数。最小的质数是2,它也是唯一的偶数质数,最前面的质数依次排列为:2、3、5、7... -
关于java:设计一个类来判断数字是否为质数
2021-03-08 20:05:33我的作业是设计一个具有以下条件的名为MyInteger的类:一个名为value的int数据字段,用于存储整数的int值。为指定的int值创建MyInteger对象的构造函数。返回int值的get方法。isPrime()方法,如果值是质数则返回true... -
Python编程判断一个正整数是否为素数的示例代码分享
2021-01-14 11:50:41这篇文章主要介绍了Python编程判断一个正整数是否为素数的方法,涉及Python数学运算相关操作技巧,需要的朋友可以参考下本文实例讲述了Python编程判断一个正整数是否为素数的方法。分享给大家供大家参考,具体如下:... -
判断是否为素数的c++程序
2019-10-05 15:08:33#include<iostream> using namespace std; int main() { ...//定义布尔型变量yes_no,用来表示x是否为素数 //先假定x是素数,因此将yes_no的初始值设为true for(int n=2;n<x;n++... -
判断一个数是否为素数(调用函数)
2022-01-24 19:26:34bool is_prime(int x) //判断是否为素数的函数 { if(x<=1) //因为最小的素数是2,所以当数字小于2时,返回假; return false; for(int i=2; i*i<=x; i++) { if(x%i==0) //如果这个数能够整除i (i从2到... -
Python 判断是否为质数或素数的实例
2020-12-29 08:51:56一个大于1的自然数,除了1和它本身外,不能被其他...首先我们来第一个传统的判断思路:def handlerNum(num):# 质数大于 1if num > 1:# 查看是否有其他因子for i in range(2, num//2+1):if (num % i) == 0:pr... -
python分享是否为素数 python输入并判断一个数是否为素数
2021-04-27 09:29:14python输入并判断一个数是否为素数x=int(input("x\n")); i=2; for i in range(2,x+1): if(x%i==0): break;if(i==x and i。用python 判断一个数是否是素数小编觉得小编的程序是对的但为什么没办法运行,那个弹出来的... -
C语言:判断是否为素数
2020-02-23 22:28:19判断素数 算法思想 1、素数即部可被除本身和1以为其它数整除; 2、因为有大小限制所以考虑用for循环实现; 3、条件表达式的运用注意。 //判断素数的程序 #include<stdio.h> int main() { int a; int i; ... -
判断是否能被已知且小于x的素数整除
2019-03-30 17:25:33适合初学者的代码学习,有助于帮助初学者了解C语言,帮助其更快入门。 -
python中判断数字是否为质数的实例讲解
2021-01-14 12:54:15在计算机程序中,算法是...下面小编向大家演示在python如何判断数字是否为质数。质数:一个大于1的自然数,除了1和它本身外,不能被其他自然数(质数)整除(2, 3, 5, 7等),换句话说就是该数除了1和它本身以外不再有... -
python--判断是否为质数
2020-07-30 13:23:01判断质数 比较简单,不详细介绍了,看... print(x, '既不是质数也不是素数') elif (x % 2 == 0 or x % 3 == 0 or x % 5 == 0 or x % 7 == 0) and (x != 2 and x != 3 and x != 5 and x != 7): print(x, '不是质数' -
【Java代码】如何判断一个数字是否为质数
2022-04-24 21:50:13判断一个数字是否为质数 方法简单高效!!! public class IsPrime { public static void main(String[] args) { int[] test = new int[]{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 33, 61, 75, 101}; ... -
定义一个函数prime判断某个整数是否为素数;
2021-05-24 09:11:40定义一个函数prime判断某个整数是否为素数; (2)然后从键盘输入一行字符串,将其中的连续数字依次提取出来形成一个列表。例如,字符串“ab12cd34fg67”按要求提取后形成列表[12,34... -
Python判断一个整数是否为素数
2020-12-21 14:46:11素数的定义:是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数即只能被1和自己本身整除的数思路及步骤给定一个大于2的整数n令i=2用n除i,得到余数r判断r==0是否成立,如果成立则n不是素数,结束算法... -
写一个判素数的函数int fun(int x),判断形参x是否是素数,若是则函数返回值1,否则返回值0。在主函数中...
2021-12-04 22:20:37#define _CRT_SECURE_NO_WARNINGS #include<stdio.h> int is_prime(int x) { int j = 0; { for (j = 2; j < x; j++) if (x % j == 0) return 0;... printf("以下为100之内的素数:\n"); ... -
判断一个数是否为质数/素数——从普通判断算法到高效判断算法思路
2016-05-06 15:00:141)直观判断法最直观的方法,根据定义,因为质数除了1和本身之外没有其他约数,所以判断n是否为质数,根据定义直接判断从2到n-1是否存在n的约数即可。C++代码如下:bool isPrime_1( int num ) { int t... -
编写一个函数:int isprime(int n)用于判断一个整数是否为素数,如果是就返回1,否则返回0 。
2020-12-15 11:33:51//此时result的值为3 函数括号里的参数也可以为变量或能算出值的表达式 以上就是一个基本的函数,一般的函数都有返回值,也就是return后面跟的值,返回值可以为各种数据类型,如:int,float,double,char,a[]... -
【C语言程序练习】判断从键盘读入的正整数x是否为质数
2021-01-14 11:13:18判断从键盘读入的正整数x是否为质数,并输出判断结果。 #include<stdio.h> #include<math.h> int main() { int x, k, i; printf("请输入一个正整数x:"); scanf_s("%d", &x); if (x <= 0) ... -
输入一个整数,判断其是否为素数
2022-03-31 22:54:04输入一个整数,判断其是否为素数 -
输入并判断一个数是否为质数(素数)
2020-12-09 17:34:45在键盘输入一个数,判断其是否为质数(素数),如果是,则输出为质数(素数),如果不是,则输出为合数. 二.代码 #include<stdio.h> #include<stdlib.h> int IsPrime(int x) { int num = 2; //输入num,从2开始 ...