好友
阅读权限10
听众
最后登录1970-1-1
|
只要有梦想,再迟都不怕。
只要够流氓,再难都不怕。
//1. 编程序求 5X + 2Y + Z = 50 的所有非负整数解。
#include<stdio.h>
#include<stdlib.h>
void main() {
for (int x = 0; x < 50; x++) {
for (int y = 0; y < 50; y++) {
for (int z = 0; z < 50; z++) {
if (5*x + 2*y + z == 50) {
printf("%4d,%4d,%4d\n", x, y, z);
}
}
}
}
getchar();
}
void main2() {
for (int x= 0; x <= 50 / 5; x++) {
for (int y = 0; y <= (50 - 5 * x) / 2; y++) {
int z = 50 - 5 * x - 2 * y;
if (z > 0) {
printf("%4d,%4d,%4d\n", x, y, z);
}
}
}
getchar();
//解题思路:类似于树状图。列出x的所有情况,其从0到50/5,在x的值固定的情况下,y的可能性在0,(50 - 5 * x) / 2之间,,在x,y值都固定的情况下,如果z =50 - 5 * x - 2 * y 大于0,此时的x,y,z就是一个解。
} |
免费评分
-
查看全部评分
|
发帖前要善用【论坛搜索】功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。 |
|
|
|
|