求解答。求答疑。kkl

给你一个方程ax+by+cz+d=0,给你abcd的值,让你找到一个满足的解
若有多个满足要求的,仅输出一个答案,要求x尽可能小,在x相等的情况下y尽可能小,在x,y都相等的情况下z尽可能小
输入

对于每一组数据,输入四个数a,b,c,d
1<=a,b,c,d<=100
输出

对于每一组数据,输出一个满足要求的解,若在-100到100之间没有满足要求的解,输出-1

#include <stdio.h>
#include <stdlib.h>
int main()
{
    int a, b, c, d;
    int x, y, z;
    bool found;
    while (scanf("%d %d %d %d", &a, &b, &c, &d) != EOF) {
        found = false;
        for (x = -100; x <= 100; x++) {
            for (y = -100; y <= 100; y++) {
                for (z = -100; z <= 100; z++) {
                    if (a * x + b * y + c * z + d == 0) {
                        found = true;
                    }
                    if (found) {
                        break;
                    }
                }
                if (found) {
                    break;
                }
            }
            if (found) {
                break;
            }
        }
        if (!found) {
            printf("-1\n");
        }
        else {
            printf("x=%d,y=%d,z=%d\n", x, y, z);
        }
    }
    return 0;
}

int main()
{
    int a, b, c, d;
    int x, y, z;
    int flag = 1;
    x = y = z = -100;
    scanf("%d%d%d%d", &a, &b, &c, &d);
    for (; x <= 100 && flag; x++)
    {
        for (; y <= 100 && flag; y++)
        {
            for (; z <= 100 && flag; z++)
            {
                if (a * x + b * y + c * z + d == 0)
                {
                    printf("%d %d %d\n", x, y, z);
                    flag = 0;
                    break;
                }
            }
        }
    }
    if (x > 100)
        printf("-1\n");

    return 0;
}