前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python基础训练100题-6

Python基础训练100题-6

作者头像
用户9925864
发布2022-07-27 09:02:14
2790
发布2022-07-27 09:02:14
举报
文章被收录于专栏:算法工程师的学习日志

分享一些Python学习题目

  • 实例026:递归求阶乘
  • 实例027:递归输出
  • 实例028:递归求等差数列
  • 实例029:反向输出
  • 实例030:回文数

实例026:递归求阶乘

题目: 利用递归方法求5!。

程序分析: 递归调用即可。

代码语言:javascript
复制
def factorial(n):
    return n*factorial(n-1) if n>1 else 1
print(factorial(5))

实例027:递归输出

题目: 利用递归函数调用方式,将所输入的5个字符,以相反顺序打印出来。

程序分析: 递归真是蠢方法。

代码语言:javascript
复制
def rec(string):
    if len(string)!=1:
        rec(string[1:])
    print(string[0],end='')
 
rec(input('string here:'))

实例028:递归求等差数列

题目: 有5个人坐在一起,问第五个人多少岁?他说比第4个人大2岁。问第4个人岁数,他说比第3个人大2岁。问第三个人,又说比第2人大两岁。问第2个人,说比第一个人大两岁。最后问第一个人,他说是10岁。请问第五个人多大?

程序分析: 就一等差数列。

代码语言:javascript
复制
def age(n):
    if n==1:
        return 10
    return 2+age(n-1)
print(age(5))
 

实例029:反向输出

题目:给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。

程序分析:学会分解出每一位数,用字符串的方法总是比较省事。

代码语言:javascript
复制
n=int(input('输入一个正整数:'))
n=str(n)
print('%d位数'%len(n))
print(n[::-1])

实例030:回文数

题目: 一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。

程序分析 :用字符串比较方便,就算输入的不是数字都ok。

代码语言:javascript
复制
n=input("随便你输入啥啦:")
a=0
b=len(n)-1
flag=True
while a<b:
    if n[a]!=n[b]:
        print('不是回文串')
        flag=False
        break
    a,b=a+1,b-1
if flag:
    print('是回文串')
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-06-10,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 算法工程师的学习日志 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档