题目描述:
元前五世纪,我国古代数学家张丘建在《算经》一书中提出了“百鸡问题”:鸡翁一值钱五,鸡母一值钱三,鸡雏三值钱一。
百钱买百鸡,问鸡翁、鸡母、鸡雏各几何?
思路:
这道题很简单,假设鸡翁 i 只, 鸡母 j 只, 则有
- i + j + k = 100
- 5*i + 3*j + k/3 = 100
由以上两个等式我们可以推出:
- j = 25 - i * 7/4 ;
- k = 75 + i * 3/4 ;
由于i、 j、 k 必须是0或正整数,所以 i 必须是4的倍数,因此我们下面的程序中也是以4为步长增长的
1 public class BuyHens { 2 3 public static void main(String[] args) { 4 int i = 0 ; 5 int j = 0 ; 6 int k = 0 ; 7 8 for(i = 0 ; 5*i <= 100 ; i += 4){ 9 j = 25 - i*7/4 ; 10 k = 75 + i*3/4 ; 11 //满足条件是j >= 0 && k >= 0 12 if(j >= 0 && k >= 0 ){ 13 System.out.println(i + " " + j + " " + k) ; 14 } 15 } 16 } 17 }