java使用枚举法解三元一次方程(百钱白鸡)

public class baiqianbaiji {

    //公鸡5块 母鸡三块  小鸡三只一块  100块钱买一百只鸡   每一种鸡哥多少只
    /*
        方法一:
        x+y+z = 100
        5x+3y+1/3y= 100 ;
        其中   0<x<=20
                0<y<40
                0<z<=100  即 z = 100-x-y

                最后我们要验证z%3=0 和 5x+3y+1/3z= 100(中文意义对但是程序里面写就是错)同时成立
                可以使用枚举方法进行验证获取  但是问题是那个1/3怎么处理


     */
    public static void main(String[] args) {


        for(int x = 0 ; x <= 20 ;x++  ){

            for (int y = 0 ;y <= 35 ;y++ ){

               int  z = 100-x-y ;

               //需要严格的注意这个5*x+3*y+z/3 == 100;我之前写的是5x+3y+1/3z= 100
                //  1/3*z 或者(1/3*2)结果永远是0  因为1/3的结果就是0
                if ((z%3 == 0) && (5*x+3*y+z/3 == 100)){


                        System.out.println("公鸡:"+x+" 母鸡:"+y+" 小鸡"+z);


                }

            }


        }

    }


}

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值