数学中国

 找回密码
 注册
搜索
热搜: 活动 交友 discuz
查看: 4052|回复: 18

li(x)函数:求x内有多少个素数

[复制链接]
发表于 2020-6-30 08:58 | 显示全部楼层 |阅读模式
第1个程序1亿还很精确,但用时半分钟;第2 个程序带参数,参数是0.5时和第一个结果基本一样,越大时间越快,但精确度下降,参数和数之间要有空格。
li(x)函数有两个标准,一个是美国标准,从0计算,一个是欧洲标准,从2计算

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
 楼主| 发表于 2020-6-30 09:10 | 显示全部楼层
第二个程序我试了一下,参数设为10时,精确度仍可达到个位。所以数小时可用第一个,数大时,又不想等,可用第二个,参数越大,时间越快
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-6-30 09:26 | 显示全部楼层
li(x)是高估素数函数,即比实际素数要高。但数学家已证明,如果黎曼假设成立,那么当X在一个10的100亿亿亿亿位数的时候会小于实际素数
回复 支持 反对

使用道具 举报

发表于 2020-6-30 10:35 | 显示全部楼层
你这两个程序是算素数个数的吗?咋标的是矩形和抛物线?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-6-30 13:43 | 显示全部楼层
本帖最后由 simpley 于 2020-6-30 05:47 编辑

那是算法。我用不同算法编了好几个程序,比较效果,为了区别,把算法标上。第一个函数在1亿时是准确到个位,再往上没试,因为时间过长。弟二个程序在参数为10时,也可立即算出准确结果。比如要算123456的值,输入123456空格1,空格后的数是参数,自己随意填。弟一个程序不需参数,只填一个数
回复 支持 反对

使用道具 举报

发表于 2020-6-30 13:52 | 显示全部楼层
simpley 发表于 2020-6-30 05:43
那是算法。我用不同算法编了好几个程序,比较效果,为了区别,把算法标上。第一个函数在1亿时是准确到个位 ...

奥,时间长了,我要用实际值做参考,或者是弄个下限值也行。上限值我用不上的,希望有空有时间了编个下限值的程序,接近实际的下限值。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-6-30 15:14 | 显示全部楼层
本帖最后由 simpley 于 2020-6-30 14:03 编辑

上限是li(x),下限是x/lnx,不过前者要比后者精确得多。1亿时后者误差33万多,前
者只有754
回复 支持 反对

使用道具 举报

发表于 2020-6-30 15:46 | 显示全部楼层
simpley 发表于 2020-6-30 07:14
上限是li(x),下限是x/lnx,不过前者要比后者精确得多。1亿时后者误差33万多,前
者只有754

好的,后者是重要的,以此为基础可以得到准确的公式。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-6-30 22:04 | 显示全部楼层
本帖最后由 simpley 于 2020-6-30 14:30 编辑

li(x)函数主要是用于计算π(x),即X内有多少素数,准确值.这个公式就是π(x)的准确公式,但它并未被证明,它是以黎曼假设为条件的,黎曼假设成立,它就成立。
想发过π(x)公式的图片,怎么也发不上来
回复 支持 反对

使用道具 举报

发表于 2020-7-1 05:55 | 显示全部楼层
simpley 发表于 2020-6-30 14:04
li(x)函数主要是用于计算π(x),即X内有多少素数,准确值.这个公式就是π(x)的准确公式,但它并未被证明 ...

精确公式不存在吧?我的理解。

点评

这是黎曼于十九世纪得出的公式,其中蓝含了著名的黎曼作文设  发表于 2020-7-1 10:44
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|数学中国 ( 京ICP备05040119号 )

GMT+8, 2024-4-26 23:59 , Processed in 0.078125 second(s), 17 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表