|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
问题是这样的:- #include <stdio.h>
- int main()
- {
- int a, b, c, x, y, count = 0;
- scanf_s("%d,%d,%d", &a, &b, &c);
- for (x = 0; x <= c / a; x++) {
- y = (c - a * x) / b;
- if (a * x + b * y == c)
- count++;
- }
- printf("count=%d\n", count);
- }
复制代码
求不定方程 ax + by = c 关于未知数 x 和 y 的所有非负整数解组数。
输入格式:一行,包含三个正整数 a,b,c,两个整数之间用单个空格隔开。每个数均不大于 1000。
输出格式:一个整数,即不定方程的非负整数解组数。
看看我这代码问题出在哪了
本帖最后由 jhq999 于 2021-11-10 18:01 编辑
是不是求x,y?
- int main()
- {
- int a, b, c, x, y, count = 0;
- scanf_s("%d,%d,%d", &a, &b, &c);
- if ((c/a)>=0)
- {
- for (x = 0; x <= c / a; x++)
- {
- if (0==(c - a * x)%b)
- {
- y = (c - a * x) / b;
- if (a * x + b * y == c)
- {
- printf("x=%d,y=%d\n", x,y);
- count++;
- }
- }
- }
-
- }
- if(!count)printf("没有正整数解");
- return 0;
- }
复制代码- 2,6,78
- x=0,y=13
- x=3,y=12
- x=6,y=11
- x=9,y=10
- x=12,y=9
- x=15,y=8
- x=18,y=7
- x=21,y=6
- x=24,y=5
- x=27,y=4
- x=30,y=3
- x=33,y=2
- x=36,y=1
- x=39,y=0
复制代码
|
|