首页 > 编程知识 正文

python找1000以内的质数,python求1000以内的质数

时间:2023-05-05 10:38:08 阅读:195794 作者:3329

100以内质数表

系统默认用户

浏览 5725

质数有哪些100以内

推荐于2019-06-05 03:08:19

100以内的质数共有25个。

分别是:2、3、5、7、11、13、17、19、23、29

31、37、41、43、47、53、59、61、67、71、73、79、83、89、97。

11594人赞同了该观点

系统默认用户

浏览 8707

Python寻找100以内的素数

想问为什么else语句是和for语句并列而不是和if语句并列?不是if……else吗?...

想问为什么else语句是和for语句并列而不是和if语句并列?不是if……else吗?

推荐于2019-06-05 03:08:19

这个两个嵌套循环,外层的使用m循环100个数,内层的判断当前值m是否是素数,如果不是素数条件立即终止。

运行结果正确,这里的else其实还是和if配对,不过是和第二个for循环里的整体的if配对,只有整体的if判断条件都不满足,才执行else里的内容

更多追问追答

追问

就是要for遍历完成后才走else对吧,否则会循环一遍print一个数是这样吗?

谢谢您的解答,很清楚的,不过只能采纳一个,不好意思啦,总之,非常感谢!

追答

对,就是内层循环之后,才会判断,如果循环一遍就判断,就不符合素数的判断规则了

必须将2~m里的所有数都判断了,都不符合m%i==0,才会运行else

望采纳!

19398人赞同了该观点

系统默认用户

浏览 4347

判断100以内质数和合数时为什么不需要考虑11的倍数呢?

推荐于2019-06-05 03:08:19

100=10×10.

100以内的数化成两整数之积,其中一个肯定小于10.

所以在一百以内判断质数合数:不能被2、3、5、7整除的即为质数。

33172人赞同了该观点

系统默认用户

浏览 7961

100以内的奇数有哪些

推荐于2019-06-05 03:08:19

所有整数不是奇数(单数),就是偶数(双数)。dlddy数是2的倍数,它就是偶数(双数),可表示为2n;若非,它就是奇数(单数),可表示为2n+1(n为整数),即奇数(单数)除以二的余数是一。

100以内的奇数有:1,3,5,7,9,11,13,15,17,19,21,23,25,27,29,31,33,35,37,39,41,43,45,47,49,51,53,55,57,59,61,63,65,67,69,71,73,75,77,79,81,83,85,87,89,91,93,95,97,99。

30890人赞同了该观点

系统默认用户

浏览 5625

100以内的质数相乘积等于31是什么质数

100以内的质数相乘积等于31是什么质数...

100以内的质数相乘积等于31是什么质数

推荐于2019-06-05 03:08:19

题目不合理。

31本身就是一个质数,只能由1×31得来,它不可能是两个或两个以上的质数的乘积。

23639人赞同了该观点

系统默认用户

浏览 5687

43209是不是质数

推荐于2019-06-05 03:08:19

不是,质数只能被1和其本身,你试一下,这个数可以被1,3,9,4801,14403,43209这几个整除

6359人赞同了该观点

系统默认用户

浏览 3429

python,随机产生40个100以内的数字,然后定义一个判断素数的函数,用该函数判断这40个数字并打印

错在哪???fromrandomimport*a=[randint(0,100)foriinrange(40)]print(a)defis_prime(n):list_num=[]foriina:fornuminrange(100):ifi%num==0andi!=num:breakelifi%num!=0andnum==(i...

错在哪???

from random import *

a=[randint(0,100)for i in range(40)]

print(a)

def is_prime(n):

list_num = []

for i in a:

for num in range(100):

if i%num == 0 and i != num:

break

elif i%num != 0 and num == (int(sqrt(n))):

list_num.append(i)

return list_num

展开

推荐于2019-06-05 03:08:19

from random import *

a=[randint(0,100)for i in range(40)] #a是列表

def is_prime(a):

list_num = []

for i in a:

for num in range(2,i):

if i%num == 0:#余数为0时,该数就不是质数

break #break意思就是当该数不是质数时,就跳出整个循环

else: #循环迭代都完成后还没有找出能整除的情况,就可以判断该数i就是一个质数

list_num.append(i)

return list_num

print(is_prime(a))

14629人赞同了该观点

系统默认用户

浏览 2102

100以内的数中,既是5的倍数,又含有因数19,符合条件的数是几?

推荐于2019-06-05 03:08:19

100以内的数中,既是5的倍数,又含有因数19,符合条件的数是5*19=95

只有这一个

22288人赞同了该观点

系统默认用户

浏览 5584

求助:C++素数表

#include#include#includeusingnamespacestd;bool*PrimeList(intnn){bool*aa;aa=newbool[nn+1];intii=0,酷炫的日记本=0;aa[0]=aa[1]=0;for(ii=2;ii<=nn;ii++)aa[i...

#include

#include

#include

using namespace std;

bool *PrimeList(int nn){

bool *aa;

aa = new bool [nn+1];

int ii = 0 , 酷炫的日记本 = 0 ;

aa[0] = aa[1] = 0;

for (ii = 2 ; ii <= nn ; ii++)

aa[ii] = 1 ;

for (ii = 2 ; ii <= nn ; ii++)

for(酷炫的日记本 = ii*ii ; 酷炫的日记本 <= nn ; 酷炫的日记本 += ii)

aa[酷炫的日记本] = 0 ;

return aa;

}

int main(void)

{

int mm = 0;

mm = 100000;

bool *list = PrimeList(mm);

cout << "素数表运行正常n";

return 0;

}

代码如上方所示,问题如下:

当mm = 10000时,程序运行正常;

当mm = 100000时,程序中途暴毙。

这是怎么回事,有没有好点的解决办法?

展开

推荐于2019-06-05 03:08:19

你应该还没有学过操作系统这门课吧。为了方便你理解,不严格地说,程序运行时候都是先向操作系统申请内存,都有自己的占用内存大小,不建议在函数里面开数组,尤其是较大的数组,这会引起程序栈溢出(就是超出了程序向操作系统申请的一部分内存),引起程序崩溃。

你可以把数组在函数外面预先开好,在函数里面访问数组。数组在函数外面和在函数里面内存限制是不一样的,这个等你以后学完课程就知道了。

20881人赞同了该观点

系统默认用户

浏览 1471

c语言求因式分解(不用质数表)每一行代码是什么意思?注释出来

#include#includeintmain(void){inti,n;printf("不用质数表n");while(1){printf("请输入正整数:");scanf("%d",&n);printf("%d=",n);for(i=2;i*i<=n;){if(n%i==0...

#include

#include

int main(void)

{

int i, n;

printf("不用质数表n");

while(1)

{

printf("请输入正整数:");

scanf("%d", &n);

printf("%d = ", n);

for(i = 2; i * i <= n; )

{

if(n % i == 0)

{

printf("%d * ", i);

n /= i;

}

else

{

i++;

}

}

printf("%dn", n);

}

return 0;

}

展开

推荐于2019-06-05 03:08:19

#include

#include

int main(void)

{

int i, n;

printf("不用质数表n");

while(1)//无限循环

{

printf("请输入正整数:");

scanf("%d", &n);//输入一个正整数

printf("%d = ", n);//输出提示信息

for(i = 2; i * i <= n; )//穷举所有可能的较小的质因子

{

if(n % i == 0)//若i是一个较小的质因子

{

printf("%d * ", i);//就输出这个较小的质因子

n /= i;

}

else//否则就i++,准备尝试下一个

{

i++;

}

}

printf("%dn", n);//输出最大的一个因子

}

return 0;

}

15708人赞同了该观点

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。