日本著名数学游戏专家中村义作教授提出这样一个问题:父亲将2520个桔子分给六个儿子。分完 后父亲说:“老大将分给你的桔子的1/8给老二;老二拿到后连同原先的桔子分1/7给老三;老三拿到后连同原先的桔子分1/6给老四;老四拿到后连同原先的桔子分1/5给老五;老五拿到后连同原先的桔子分1/4给老六;老六拿到后连同原先的桔子分1/3给老大”。结果大家手中的桔子正好一样多。问六兄弟原来手中各有多少桔子?
package homework;
import java.util.Scanner;
/*日本著名数学游戏专家中村义作教授提出这样一个问题:父亲将2520个桔子分给六个儿子。
分完 后父亲说:“老大将分给你的桔子的1/8给老二;老二拿到后连同原先的桔子分1/7给老三;
老三拿到后连同原先的桔子分1/6给老四;老四拿到后连同原先的桔子分1/5给老五;老五拿到后
连同原先的桔子分1/4给老六;老六拿到后连同原先的桔子分1/3给老大”。结果大家手中的桔子
正好一样多。问六兄弟原来手中各有多少桔子?
*/
public class homework4 {
public static void main(String[] args) {
count(240, 210, 1);
}
public static int count(int oldnum, int nextgetnum, int i) {
if (i > 6) {
return 0;
}
if (i == 1) { // 老大
oldnum = 240;
nextgetnum = oldnum / (9 - i); // 老大给老二的橘子数
System.out.println("第" + i + "个人原来的橘子数为" + oldnum);
} else {
nextgetnum = (oldnum + nextgetnum) / (9 - i);
}
int nextOldNum = 0;
nextOldNum = 2520 / 6 * (8 - i) / (7 - i) - nextgetnum;
System.out.println("第" + (i + 1) + "个人原来的橘子数为" + nextOldNum);
i = i + 1;
return count(nextOldNum, nextgetnum, i);
}
}