每日经典算法题(二十三) 年龄推算

每日经典算法题(二十三) 年龄推算

今儿这题属实过于简单了

题目

有5个人坐在一起:

问第五个人多少岁?他说比第四个人大 2 岁。

问第四个人岁数,他说比第三个人大 2 岁。

问第三个人,又说比第二人大 2 岁。

问第二个人,说比第一个人大 2 岁。

最后问第一个人,他说是 10 岁。请问第五个人多大?

程序分析

利用递归的方法,递归分为回推和递推两个阶段。要想知道第五个人岁数,需知道第四人的岁数,依次类推,推到第一人(10岁),再往回推。

思路

找到每个人岁数之间的规律,依次小两岁,所以我们可以定义第一人(10岁)为初始值,然后利用循环累加至第五个人的年龄,注意循环次数为 4 即可。

代码示例

public class Q23_Recursive_Ages {public static void main(String[] args) {int p5age = 10;int p1age = p5age;for (int i=1;i<5;i++){p1age = p1age + 2;}System.out.println("第五个人的年龄是:"+p1age);}
}

输出结果

第五个人的年龄是:18
  • Day23 打卡成功!


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部