Mathematica基础——不定方程问题

2026-02-11 01:05:34

1、求不定方程x^2 - y^3 == 1所有的整数解:

Reduce[x^2 - y^3 == 1, {x, y},Integers]

答案是:(-3,2)、(-1,0)、(1,0)、(3,2)。不知道Mathematica为什么忽略了(-1,0)这组解!

Mathematica基础——不定方程问题

Mathematica基础——不定方程问题

2、Reduce在解一元三次方程的时候,不会给出根式解。

Reduce[x^3 + 2 x^2 + 3 x + 4 == 0, x]

需要根式解的话,需要Cubics(三次显式)加以限制:

Reduce[x^3 + 2 x^2 + 3 x + 4 == 0, x, Cubics -> True]

不如直接用Solve:

Solve[x^3 + 2 x^2 + 3 x + 4 == 0, x]

Mathematica基础——不定方程问题

Mathematica基础——不定方程问题

3、用面值为1元、2元、5元的货币,来购买17元的商品,可以有多少组合方法?

Reduce[a 1 + b 2 + c 5 == 17 && a >= 0 && b >= 0 && c >= 0, {a, b, c}, Integers];

Length[%]

答案是:22.

Mathematica基础——不定方程问题

4、求不定方程a^3 + b^3+ c^3==d^3在d<20的所有正整数解,但是具体条件有所松动:

Reduce[a^3 + b^3+ c^3==d^3&&20>= d>a >= b >=  c >= 0, {a, b, c,d}, Integers]

Mathematica基础——不定方程问题

5、求解佩尔方程x^2 - 7 y^2 == 1 的通解:

Reduce[x^2 - 7 y^2 == 1 && x > 0 && y > 0, {x, y}, Integers]

还可以求该方程在1000以内的所有正整数解(估计不会多于100个):

FindInstance[x^2 - 7 y^2 == 1 &&1000> x > 0 && 1000>y > 0, {x, y}, Integers,100]

事实上,只有两个!

Mathematica基础——不定方程问题

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢