24):1、题目:利用递归方法求5!。
程序分析:递归公式:fn=fn_1*4!
#!/usr/bin/python # -*- coding: UTF-8 -*- def fact(j): sum = 0 if j == 0: sum = 1 else: sum = j * fact(j - 1) return sum print fact(5)
以上实例输出结果为:
120
python3 参考方案:
def Factorial(n): if n == 1: fn=1 else: fn = n*Factorial(n-1) return fn print(Factorial(5))
2、题目:利用递归函数调用方式,将所输入的5个字符,以相反顺序打印出来。
程序源代码:
#!/usr/bin/python # -*- coding: UTF-8 -*- def output(s,l): if l==0: return print (s[l-1]) output(s,l-1) s = raw_input(‘Input a string:‘) l = len(s) output(s,l)
以上实例输出结果为:
Input a string:abcde e d c b a
使用负数下标:
#!/usr/bin/python # -*- coding: UTF-8 -*- def desc_output(s): if(len(s) > 0): print(s[-1]) # python 负数下标 desc_output(s[0:-1]) s = raw_input(‘Input a string:‘) desc_output(s)
Python3 下非递归,使用各列表的 reverse() 方法:
#!/usr/bin/env python3 S = input(‘Input a string:‘) L = list(S) L.reverse() for i in range(len(L)): print(L[i])
# coding:utf-8 def output(s): s = list(s) if len(s) == 0: return print(s[len(s) - 1]) s.pop() output(s) output("abcde")
Python3 下测试:
#!/usr/bin/env python3 s=input("输入一串字符: ") s=list(s); for i in range(0,int(len(s)/2)): t=s[len(s)-i-1]; s[len(s) - i - 1]=s[i] s[i]=t print("".join(s))
以下实例,可以支持中文字符:
# encoding:utf-8 ‘‘‘ Created on 2017年8月14日 题目:利用递归函数调用方式,将所输入的5个字符,以相反顺序打印出来。 @author: wangtaoyuan ‘‘‘ import sys reload(sys) sys.setdefaultencoding("utf8") str = raw_input(‘请输入:‘).decode(‘utf-8‘) def reoutput(str): if len(str) == 0: return print str[-1] str = str[0: len(str) - 1] reoutput(str) reoutput(str)
# -*- coding: UTF-8 -*- list = [] for i in range(1,6): a = input(‘输入第 {} 个数字:‘.format(i)) list.append(a) list2 = list[::-1] print(list2)
Python3 测试实例:
s=input("请输入字符:") for i in range(len(s)-1,-1,-1): print(s[i],end="")
Python3 测试实例:
def printlast(strinfo, index): if (index + 1) == len(strinfo): print(end="") else: printlast(strinfo, index + 1) print(strinfo[index], end="") printlast("abcdefg", 0)
Python3 参考:
a=[] for i in range(1,6): b=input(‘请输入第‘+str(i)+‘个字符:‘) a.append(b) def fp(c): if c==6: return False print(a[5-c],end=‘ ‘) fp(c+1) fp(1)
这两个小例子感觉蛮有意思的,有兴趣的可以练练手。如果感觉不错的话,请多多点赞支持哦。。。
原文链接:https://blog.csdn.net/luyaran/article/details/80064473
原文地址:https://www.cnblogs.com/luyaran/p/8943907.html
时间: 2024-11-08 18:03:15