不定方程的非负(正)整数解问题以及c语言算法&编程实现

不定方程的非负(正)整数解问题以及c语言算法&编程实现

[问题描述]
1. 求不定方程29a+30b+31c=2196的正整数解

2. c语言、编程求不定方程组 3x+4y-z=32、、x*y=16z在区间[-100,100]上的整数解的个数,并打印出所有的整数解

用3个FOR循环int c=0;for (x=-100;x<=100;x++){ for (y=-100;y<=100;y++) { for (z=-100;z<=100;z++) { if(3*x+4*y-z==32&&x*y==16*z) c++ } }}


3.求满足不定方程a^3+b^3+c^3=2011的整数解

通过简单数学不等式分析,可以估算出a,b,c<2011^(1/3)=12.6

4. 已知x1+x2+x3=10,求满足x1,x2,x3为非负整数的该方程解的个数。
答案是C(10,2)= 45
int N=10;
for(x1=0,x1 {
for(x2=0,x2 {
for(x3=0,x3 {
if(x1+x2+x3=N)
{
输出(x1,x2,x3);
}
}
}
}

5. 不定方程x1+x2+x3+...+x10=100的正整数解有多少组.
把这个问题转换成100个球放入10个盒子中,每个盒子至少一个球。放入的球个数分别为x1、x2、x3、……、x10。将此100个球排一行,在其中插入9块隔板将它们分成10份,每份至少一个球。因此这9块隔板不能相邻,也不能在两端。于是在100个球的中间99个空内放入隔板,共有放法C(99,9)种(其中C是组合数)。即是此不定方程的正整数解的组数,这个数超过了1.73×10^12。




你可能感兴趣的:(不定方程的非负(正)整数解问题以及c语言算法&编程实现)