不定方程:x+10y+50z=500 x,y,z的和等于100,求x,y,z分别是多少?代数

来源:学生作业帮助网 编辑:六六作业网 时间:2024/12/26 13:19:21
不定方程:x+10y+50z=500x,y,z的和等于100,求x,y,z分别是多少?代数不定方程:x+10y+50z=500x,y,z的和等于100,求x,y,z分别是多少?代数不定方程:x+10y

不定方程:x+10y+50z=500 x,y,z的和等于100,求x,y,z分别是多少?代数
不定方程:x+10y+50z=500 x,y,z的和等于100,求x,y,z分别是多少?代数

不定方程:x+10y+50z=500 x,y,z的和等于100,求x,y,z分别是多少?代数
三元方程在只有两个方程式时有无限多组解.如果仅需要正整数解的话,可用以下方法:
x+10y+50z=500
x+y+z=100
9y+49z=400 y=(400-49z)/9=44-5z+(4-4z)/9 令a=(4-4z)/9 则y=44-5z+a
9a=4-4z z=(4-9a)/4=1-2a-a/4 令a/4=b 则z=1-2a-b
a=4b z=1-2*4b-b=1-9b
y=44-5(1-9b)+4b=44-5+45b+4b=39+49b
x=100-y-z=100-39-49b-1+9b=60-40b
z=1-9b>0 9b-39 b>-39/49
x=60-40b>0 40b

y=400/9-49z/9
x=500/9+40z/9

x+10y+50z=500
x+y+z=100 联立方程组

上式减下式,得:9y+49z=400

用矩阵求解~~~

x+10y+50z=500 x+y+z=100
两个方程相减得到:9y+49z=400
由49z≤400得,z≤8
取z=8,则9y=400-392=8,无整数解;
取z=7,则9y=400-343=57,无整数解;
取z=6,则9y=400-294=106,无整数解;
取z=5,则9y=400-245=155,无整数解;
取z...

全部展开

x+10y+50z=500 x+y+z=100
两个方程相减得到:9y+49z=400
由49z≤400得,z≤8
取z=8,则9y=400-392=8,无整数解;
取z=7,则9y=400-343=57,无整数解;
取z=6,则9y=400-294=106,无整数解;
取z=5,则9y=400-245=155,无整数解;
取z=4,则9y=400-196=204,无整数解;
取z=3,则9y=400-147=253,无整数解;
取z=2,则9y=400-98=302,无整数解;
取z=1,则9y=400-49=351,∴y=39
∴x=100-39-1=60
因此,x=60 y=39 z=1

收起

用程序编程吧这题可能有多解
#include
int main()
{
int x,y,z;
for(z=0;z<=10;z++)
for(y=0;y<=50;y++)
{
x=100-z-y;
if(x+10*y+z*50==500)
printf("%d+%d*1...

全部展开

用程序编程吧这题可能有多解
#include
int main()
{
int x,y,z;
for(z=0;z<=10;z++)
for(y=0;y<=50;y++)
{
x=100-z-y;
if(x+10*y+z*50==500)
printf("%d+%d*10+%d*50=500\n",x,y,z);
}
return 0;
}
最后得到
60+39*10+1*50=500
一秒之内出所有答案的

收起