学习python,正好用一个例子练习一下递归。

参考文档:

  http://www.runoob.com/python/python-exercise-example18.html

题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。

递归方法
#!/usr/bin/env python

# 获取单个数字
def get_num(num, bit):
if bit == 1:
return num
return get_num(num, bit-1) * 10 + num # 将所有的相加
def add_num(num, count):
if count == 1:
return num
return add_num(num, count-1) + get_num(num, count) if __name__ == '__main__':
num = int(raw_input('num:'))
count = int(raw_input('count:'))
print add_num(num, count)
网站的参考程序
#!/usr/bin/python
# -*- coding: UTF-8 -*- Tn = 0
Sn = []
n = int(raw_input('n = :\n'))
a = int(raw_input('a = :\n'))
# 计算出每一个数字,添加到列表中
for count in range(n):
Tn = Tn + a
a = a * 10
Sn.append(Tn)
print Tn # 计算列表中每个元素的和
Sn = reduce(lambda x,y : x + y,Sn)
print Sn

Tony Liu

2016-9-22, Shenzhen

最新文章

  1. 数据库---T-SQL语句提纲
  2. 实验12:Problem C: 重载字符的加减法
  3. Device ID
  4. RESTFul API 一些文章
  5. 【转】Java集合框架List,Map,Set等全面介绍
  6. CSS找到 (div+css请讲)
  7. 基于visual Studio2013解决C语言竞赛题之0406数列求和
  8. Nuget 学习二
  9. CentOS 下mysql ERROR&n…
  10. 查漏补缺系列之dapper初体验
  11. js时间戳与时间日期间相互转换
  12. oracle死锁的处理办法
  13. c# 关闭和重启.exe程序
  14. React(0.13) 定义一个使用动画
  15. Oozie-自定义实现WorkFlow中shell action
  16. [微软官方]FSUTIL
  17. 【Python学习笔记】使用Python进行T检验
  18. Java 和 Python 解析动态 key 的 JSON 数据
  19. OOP 1.2 const关键字
  20. python---爬虫相关性能(各个异步模块的使用,和自定义异步IO模块)

热门文章

  1. POJ 1734 Sightseeing trip(无向图最小环+输出路径)
  2. [BZOJ 4436][Cerc2015]Kernel Knights
  3. linux下查看一个进程的启动时间和运行时间
  4. Css - Table.css
  5. Html - a标签如何包裹Div
  6. diff和patch配合使用(转载备用)
  7. Ant Tasks 使用总结
  8. PHP 错误与异常 笔记与总结(9)自定义错误处理器
  9. adId、idfv
  10. Swing 刷新容器