广告合作
  • 今日头条

    今日头条

  • 百度一下

    百度一下,你就知道

  • 新浪网

    新浪网 - 提供新闻线索,重大新闻爆料

  • 搜狐

    搜狐

  • 豆瓣

    豆瓣

  • 百度贴吧

    百度贴吧——全球领先的中文社区

  • 首页 尚未审核订阅工具 订阅

    怎么用Mathematica解决简单的数论问题?

    来源:网络收集  点击:  时间:2024-05-31
    【导读】:
    看到一个简单的数论的征解题:如果关于x和y的不定方程7x+11y=m有且只有一组正整数解,m最大值和最小值各是多少?这里,我准备用Mathematica把所有满足条件的m全找出来。工具/原料more电脑Mathematica方法/步骤1/7分步阅读

    先假设m=100,看看对应的解是什么。

    FindInstance

    答案是:x - 8, y - 4

    所以,7 x + 11 y == 100只有一组正整数解。

    2/7

    考察别的数字m——用列表的方式,枚举出m取值在190到200之间,对应的正整数解:

    Table , {m, 190, 200}]

    3/7

    然而,这里,我们只需要关心m对应了多少组正整数解,而无须考虑解的具体形式。

    所以:

    FindInstance // Length

    4/7

    于是可以自定义一个函数,来找出满足要求的m:

    f := If // Length) == 1,

    m, 0]

    意思就是,如果7 x + 11 y == m恰好有一组正整数解的话,函数f的值就等于m;

    如果7 x + 11 y == m没有正整数解,或者,正整数解的数目多于一组,f就等返耕于0。

    5/7

    那么,我们可以枚举出1000以内所有满足条件的m:

    6/7

    我们可以发现,当m大于154以后,是一片0的天下。

    于是,我炼销净们可以猜测:

    当m154时,7x+11y=m至少有两个正整数解。

    这个猜测暂时不在本文讨论。

    看下图,大于154的数字,一个也不缺席。

    7/7

    第五步里面的结果。那一大堆0不是我们所关心的东西,可以合并起来:

    (f /@ Range) // Union

    这样,可以发现,m最小值是18,最大值是154。

    枚举法并不能代替理泪何论证明,但是这里不予证明。

    注意事项

    提示一下,要证明m的最大值是154,可以转证:当mgt;154时,7x+11y=m至少有两组正整数解。

    MATHEMATICA数论问题
    本文关键词:

    版权声明:

    1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。

    2、本站仅提供信息发布平台,不承担相关法律责任。

    3、若侵犯您的版权或隐私,请联系本站管理员删除。

    4、文章链接:http://www.1haoku.cn/art_862879.html

    相关资讯

    ©2019-2020 http://www.1haoku.cn/ 国ICP备20009186号05-07 00:03:28  耗时:0.027
    0.0268s