问题描述:

有5个人坐在一起,问第5个人多少岁?他说比第4个人大2岁。问第4个人岁数,他说比第3个人大2岁。问第3个人,又说比第2个人大2岁。问第2个人,说比第1个人大2岁。问最后1个人,他说是10岁。

请问第5个人多大?

我的思路:

这个程序是一个需要不断回调原函数的典型,后面也有一个类似问题,这次换个写法;

定义一个计算年龄的函数,因为第一个人的年龄为10,后面的人依次加2,因此根据for循环按照循环的次数i计算第i个人的年龄;

我的代码:

#coding=utf-8

def olds (man):

old=10

for i in range(1,man):

old+=2

i+=1

print "第%d个人的年龄为%d" % (man,old)

olds(1)

olds(2)

olds(3)

olds(4)

olds(5)

结果:

第1个人的年龄为10

第2个人的年龄为12

第3个人的年龄为14

第4个人的年龄为16

第5个人的年龄为18

示例代码:

def age(idx):

return 10 if idx == 1 else age(idx-1) + 2

print age(5)

这个程序也很好理解的,就是通过判断传入的参数5依次得到age(4)+2而age(4)=age(3)+2, age(3)=age(2)+2  , age(2)=age(1)+2  ,age(1)=10,结果就是age(1)+2+2+2+2

Java中巧算年龄的代码,巧算年龄 - 寂寞暴走伤的个人空间 - OSCHINA - 中文开源技术交流社区...相关推荐

  1. java中类型转换的造型_Java-类型转换 - 吉胖子很瘦的个人空间 - OSCHINA - 中文开源技术交流社区...

    类型转换 在实际开发过程中,存在类型转换,类型转换分为两种,自动类型转换和强制类型转换. 自动类型转换 程序编译或运行过程中,jvm可以发生自动类型转换.转换规则: [1]容量小的数据类型可以自动转换 ...

  2. java 嵌套类 继承_Java嵌套类 - 爱吃苹果的搬运工的个人空间 - OSCHINA - 中文开源技术交流社区...

    在Java中可以创建几种不同类型的嵌套类: 静态嵌套类: 静态内部类可以独立于外部类被实例化,无法访问外部类中的非静态属性和方法,只能外部类的实例来访问外部类的非静态变量 public class O ...

  3. 最新JAVA性能调优实战教程_java性能调优实战 - osc_9z8xc00s的个人空间 - OSCHINA - 中文开源技术交流社区...

    在项目压测过程中,发现系统占用,上下文切换非常频繁,在此记录下调优过程,希望对后来人有所帮助. 测试方法:模拟客户端实际操作,向服务器高并发发送数据,查看服务器的负载情况. 服务器基本配置如下 1,基 ...

  4. java下拉框及响应函数_MVC 实现下拉框 - osc_88wjsceo的个人空间 - OSCHINA - 中文开源技术交流社区...

    MVC动态实现下拉框的方式有很多种,但是方便快捷的却是很少,现在记录一种常用的下拉框实现方式: 1.先看看视图代码是怎么写的 这是一个下拉框: @Html.DropDownList("sel ...

  5. java用来存储键值的容器是_Java容器 - osc_y0caef0i的个人空间 - OSCHINA - 中文开源技术交流社区...

    问题及答案来源自<Java程序员面试笔试宝典>第四章 Java基础知识 4.9容器 1.Java Collections框架是什么? Java Collections框架中包含了大量集合接 ...

  6. java 实现按规则自增功能_java运算符详解 - osc_74vaali6的个人空间 - OSCHINA - 中文开源技术交流社区...

    java基础(2)--运算符详解 自增自减规则 自增自减就是常用的 a = a++ 或者 a = ++a;前者是后缀式,先把a赋值给a,再加一:后者是后缀式,先加一,在赋值给a;而且a++,++a并不 ...

  7. java常用的缓存_java 常用缓存 - 只对肉有感觉的个人空间 - OSCHINA - 中文开源技术交流社区...

    缓存是日常开发的粗茶淡饭,如果应用对某类数据有着较高的读取频次,并且改动较小时那就非常适合利用缓存来提高性能 JVM 缓存 使用全局变量,如 Map.List等容器用于存放数据,可以认为是堆缓存 eh ...

  8. java完成九宫格数独_数独(简易九宫格) - 小黑202的个人空间 - OSCHINA - 中文开源技术交流社区...

    一.ViewController.h中代码 // //  ViewController.h //  ThirdSignleView // //  Created by on 15/6/10. //   ...

  9. java获取一个目录下所有字谜_Java 猜字谜游戏 - osc_4jkldo6l的个人空间 - OSCHINA - 中文开源技术交流社区...

    package fundmental_excise6; import java.util.Arrays; import java.util.Scanner; /** * @author : jeasi ...

  10. zabbix中mysql连不上的排错_zabbix使用排错 - oschina130111的个人空间 - OSCHINA - 中文开源技术交流社区...

    在linux系统中,几乎所有运行的服务都会产生相对就的日志(log),所运行的程序在出错时都会有错误提示,即使没有任何提示也可以通过"echo $"来查看运行是否成功.使用zabb ...

最新文章

  1. Windows Phone 7 cs页面添加样式
  2. case when完成不同条件的显示
  3. GMM、fisher vector、SIFT与HOG特征资料
  4. SAP UI5 Manifest fill logic
  5. 2019前端必会黑科技之PWA
  6. CF773E Blog Post Rating(推导min的通项/线段树)
  7. oracle varchar2() 占几个字母,Oracle number date varchar2字段类型占用空间大小
  8. 使用JWT的ASP.NET CORE令牌身份验证和授权(无Cookie)——第2部分
  9. ros多机通讯的办法
  10. Android开源库集合(控件)
  11. acdsee 15中文版的许可证密钥+激活方法
  12. postgresql 日期相减
  13. 如何通过软件实现自动阶梯计电梯费
  14. 使用Number Insight和Java创建呼叫者ID
  15. 微机原理第五章 存储器
  16. docker-compose up:ERROR: Encountered errors while bringing up the project.报错问题
  17. 笔记本电脑C盘变红或变满,怎么处理?
  18. 为什么我越来越喜欢画低保真原型?
  19. 记一次成功把Vue2后台项目改造成Vite2的踩坑经历
  20. python近期使用总结

热门文章

  1. 7-1 求奇数和 (15 分)本题要求计算给定的一系列正整数中奇数的和。输入格式:输入在一行中给出一系列正整数,其间以空格分隔。当读到零或负整数时,表示输入结束,该数字不要处理。输出格式:
  2. Matlab读取Excel各个子表的数据进行拟合
  3. 激光电视的优缺点说明,激光电视与投影有什么区别
  4. 计算机鼠标知识,计算机基本组成及键盘鼠标知识.ppt
  5. 依图科技创始人:如何对AI技术和产业发展更全面的理解?
  6. 人体关节正常活动范围
  7. python定义变量取值范围_python怎么限定函数自变量取值范围?
  8. Intelligent information retrieval(智能信息检索综述)
  9. 30天自制操作系统-3
  10. 银河麒麟高级服务器操作系统V10下载安装及安装docker