day20 --------------------------------------------------------------- 实例028:递归求等差数列 题目 有5个人坐在一起,问第5个人多少岁?他说比第4个人大2岁.问第4个人岁数,他说比第3个人大2岁.问第3个人,又说比第2人大两岁.问第2个人,说比第1个人大两岁.最后问第1个人,他说是10岁.请问第5个人多大? 分析:递归有递归体和结束条件及结束的处理办法,递归体就是+2,结束就是第几个人,然后一级一级返回当前年龄即可. 1…
1:题目:有四个数字:1.2.3.4,能组成多少个互不相同且无重复数字的三位数?各是多少? 程序分析:可填在百位.十位.个位的数字都是1.2.3.4.组成所有的排列后再去 掉不满足条件的排列. 程序源代码: for i in range(1, 5): for j in range(1, 5): for k in range(1, 5): if (i != k) and (i != j) and (j != k): print(i, j, k) 以上实例输出结果为: 1 2 3 1 2 4 1 3…
深深感知python基础是有多么重要,Ljh说一定要多练题,so,我现在开始要每天打卡练习python.加油! 01:求‘1-100’的偶数和 #第一种解法: sum=0 num=0 while num<101: num+=1 if num%2==0: sum+=num print(sum) #第二种解法: sum=0 for i in range(2,101,2): sum+=i print(sum) #第三种解法: sum=0 for i in range(1,101): if i%2==0…
day18 --------------------------------------------------------------- 实例026:利用递归方法求5! 分析:递归包括递归体和递归条件,上代码 def cs(a): tmp = 1 if a <=1: return a tmp = a * cs(a-1) return tmp print(cs(5)) 看看答案: def factorial(n): return n*factorial(n-1) if n>1 else 1 p…
day32 --------------------------------------------------------------- 实例046:打破循环 题目 求输入数字的平方,如果平方运算后小于 50 则退出. 分析:直接上代码. while True: try: n=float(input('输入一个数字:')) except: print('输入错误') continue dn=n**2 print('其平方为:',dn) if dn<50: print('平方小于50,退出')…
day19 --------------------------------------------------------------- 实例027:递归输出 题目 利用递归函数调用方式,将所输入的5个字符,以相反顺序打印出来. 分析:相反顺序可以用列表来,直接pop方法. 1 def reverseprint(a): 2 lit = list(a) 3 if len(lit)>0: 4 print(lit.pop()) 5 a = "".join(lit) 6 reverse…
day13 --------------------------------------------------------------- 实例021:猴子偷桃 题目 猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个第二天早上又将剩下的桃子吃掉一半,又多吃了一个.以后每天早上都吃了前一天剩下的一半零一个.到第10天早上想再吃时,见只剩下一个桃子了.求第一天共摘了多少. 分析:反向推断,第一天摘1个桃子,第二天会摘(1+1)x2个桃子....第9天会摘xxx个桃子?代码如…
day11 --------------------------------------------------------------- 实例018:复读机相加 题目 求s=a+aa+aaa+aaaa+aa-a的值,其中a是一个数字.例如2+22+222+2222+22222(此时共有5个数相加),几个数相加由键盘控制. 分析:很简单,字符串*x可以复制. 1 a = input('请输入数字:') 2 n = input("请输入要加几次:") 3 s = 0 4 for i in…
day16 --------------------------------------------------------------- 实例024:斐波那契数列II 题目 有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13-求出这个数列的前20项之和. 分析:就是斐波那契数列的后一项除以前一项,于是写了两个函数 1 def fbs(num): 2 a = [0,1] 3 if num<=2: 4 return a 5 else: 6 for i in range(1,int(…
day39 --------------------------------------------------------------- 实例061:查找字符串 题目 查找字符串. 分析:查找字符串python提供了4种方法:其中find和index方法,是从左到右开始查找,加r代表从右到左查找:find方法返回找到后第一个子串的下标,未找到返回-1,而index方法未找到会抛出异常. 代码如下: s1 = "qinglaoshi" print(s1.find("ao&qu…