- 博客(4)
- 收藏
- 关注
原创 递归函数练习
求解汉诺塔问题 问题描述: 有三根相邻的柱子,标号为A,B,C,A柱子上从下到上按金字塔状叠放着n个不同大小的圆盘,要把所有盘子一个一个在三个柱子间移动,并且每次移动同一根柱子上都不能出现大盘子在小盘子上方,最后使得n个圆盘也按金字塔状叠放到C柱子上。请问当n取不同的值时,圆盘的移动方法? 下面展示代码。 def move(id, ori, to): #步骤打印函数,展示具体移动过程 global step print("第{}步: 将第{}块从{}移至{}".format(step
2021-04-13 20:58:17
135
原创 函数练习
给出三个正整数k,a, b,你需要计算有多少个正整数n满足a<=n<=b,且k*f(n)=n 具体要求: (1)对于一个十进制的正整数, 定义f(n)为其各位数字的平方和, 如: f(13) = 1的2次方 + 3的2次方 = 10 f(207) = 2的2次方+ 0的2次方+ 7的2次方= 53 (2)第一行包含3个正整数k,a,b; k>=1; a,b<=10的18次方; a<=b; 范例: 输入: 51 5000 10000 输出: 3 下面展示代码。 def f(n):
2021-04-12 20:55:10
380
原创 可变长度参数练习
编写一个函数cacluate, 可以接收任意多个数,返回的是一个元组。 函数需求:元组的第一个值为所有参数的平均值, 第二个值是大于平均值的全部数。 下面展示代码`。 def cacluate(args): #根据函数功能定义函数 avg = sum(args) / len(args) up_avg = [] for i in args: if i> avg: up_avg.append(i) return avg,up_
2021-04-12 16:26:02
185
原创 函数——接收一个列表和一个整形数k,返回一个新列表
编写函数,接收一个列表(包含30个1~100之间的随机整形数)和一 个整数k,返回一个新列表。 函数需求: 将列表下标k之前对应(不包含k)的元素逆序; 将下标k及之后的元素逆序。 示例:输入[1,2,3,4,5] 2 ,输出[2,1,5,4,3] 下面展示代码。 import random def fun(alist,k): #定义函数 if k < 0 or k > len(alist): return 'error key' #取出前列表前k个元
2021-04-11 23:13:33
6333
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人