Java经典算法——百钱百鸡

题目:

公鸡5文钱1只,母鸡3文钱1只,小鸡3只1文钱,用100文钱买100只鸡,可以怎么买?


public class BQBJ {

    public static void main(String[] args) {

        /*
            公鸡五文一只,母鸡三文一只,小鸡三只一文,用一百文,买一百只
         */

        int x,y,z;//x为公鸡数量,y为母鸡数量,z为小鸡数量
        int cost;//费用

        for(x=0;x<=20;x++){
            for(y=0;y<=33;y++){
                z=100-x-y;
                if(z%3==0){
                    cost=5*x+3*y+z/3;
                    if(cost==100){
                        System.out.println("公鸡的数量为:"+x+",母鸡的数量为:"+y+",小鸡的数量为:"+z);
                    }
                }
            }
        }
    }

}


若自行控制金额和数量


import java.util.Scanner;

public class BQBJ_Re {

    public static void main(String[] args) {

        int money,num;//money为金额,num为数量

        Scanner sc=new Scanner(System.in);

        System.out.print("输入金额:");
        money=sc.nextInt();
        System.out.print("输入数量:");
        num=sc.nextInt();

        handleData(money,num);

        sc.close();

    }

    private static void handleData(int money,int num) {
        /*
            公鸡五文一只,母鸡三文一只,小鸡三只一文
         */

        int x,y,z;//x为公鸡数量,y为母鸡数量,z为小鸡数量
        int cost;//费用

        for(x=0;x<=num/5;x++){
            for(y=0;y<=num/3;y++){
                z=num-x-y;
                if(z%3==0){
                    cost=5*x+3*y+z/3;
                    if(cost==money){
                        System.out.println("公鸡的数量为:"+x+",母鸡的数量为:"+y+",小鸡的数量为:"+z);
                    }
                }
            }
        }

    }

}




你可能感兴趣的:(Java经典算法题)