mathemtica 使用素数筛求素数

本文介绍了一种使用埃拉托斯特尼筛法生成小于指定数值N的所有质数列表的方法。该方法首先创建一个从2到N的数字列表,然后迭代地将每个质数的倍数从列表中移除,最终剩下的即为质数。

算小于N的质数列表1,创建从2到n的列表

2,令p=2,就是第一个指数

3,把大于P的P的倍数从列表里删除

4,p变成表中剩下的大于p的数

5, 重复3,4

 

n = 1000;
a = Range[2, n];
p = 2;
While[p < Last@a, 
 a = Complement[a, Select[a, Mod[#, p] == 0 && # > p &]]; 
 p = First@Select[a, # > p &]]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值