读书人

求问怎么编写C程序求不定方程2X+3Y=10

发布时间: 2013-04-22 16:01:35 作者: rapoo

求问如何编写C程序求不定方程2X+3Y=100的所有正整数解
输出格式x=5,y=30
x=8,y=28
[解决办法]
for (y=2;y<32;y+=2)
{
x= (100-3*y-2);
printf("x=%d,y=%d \n");
}
[解决办法]

#include<iostream>
using namespace std;

int main()
{
for(int i=0;i<=50;i++)
for(int j=0;j<33;j++)
if(2*i+3*j==100)
cout<<"x="<<i<<" "<<"y="<<j<<endl;

return 0;
}

[解决办法]

/*
2x = 100 - 3y -> (100 - 3y) % 2 == 0 -> 3y % 2 == 0 -> y % 2 == 0
又因为(100 - 3y > 0 && y > 0)
所以y = 2, 4, 6, ...,32
*/
#include <stdio.h>

int main(){
for(int y = 32; y ; y -= 2) printf("x = %d y = %d\n", (100 - 3 * y) / 2, y);
return 0;
}

读书人网 >C语言

热点推荐